Um eine SCSI-Festplatte zu verwalten, müssen Sie den SCSI-Controller und die LUN (Logical Unit Number) angeben und kennen. Für ein vSphere-Festplattenobjekt können Sie mithilfe von Cloud Assembly beide Werte in der Cloud-Vorlage zuweisen.

Die Möglichkeit, verschiedene SCSI-Controller zu verwenden, ist wichtig für die Leistung wichtig und für einige Bereitstellungstypen erforderlich, wie z. B. Oracle Real Application Clusters (RAC).

SCSI-Controller- und LUN-Festplatteneigenschaften

Fügen Sie zum Zuweisen eines SCSI-Controllers und einer LUN die folgenden Cloud-Vorlageneigenschaften hinzu:

SCSIController

unitNumber

Sie haben auch die Möglichkeit, die Eigenschaften wegzulassen. In diesem Fall wird bei der Zuweisung ein vorhersagbarer Standard verfolgt. Cloud Assembly stellt SCSI-Festplatten nicht mehr in zufälliger Reihenfolge bereit, was deren Verwaltung erschwerte.

SCSI-Controller und -Festplatten werden der Reihe nach nummeriert, wobei Null die erste Position in der Reihenfolge ist. Jeder SCSI-Controller kann SCSI-Festplatten der Einheitennummern 0 bis 15 unterstützen.

Option 1: Sowohl SCSI-Controller als auch Einheitennummer festlegen

Sie können beide Eigenschaften vollständig angeben, wie im folgenden Beispiel dargestellt. Wenn dies der Fall ist, entspricht die Zuweisung des SCSI-Controllers und der Einheitennummer den von Ihnen angegebenen Werten.

resources:
  Cloud_vSphere_Machine_1:
    type: Cloud.vSphere.Machine
    properties:
      image: centos
      cpuCount: 1
      totalMemoryMB: 1024
      attachedDisks:
        - source: '${resource.Cloud_vSphere_Disk_1.id}'
        - source: '${resource.Cloud_vSphere_Disk_2.id}'
        - source: '${resource.Cloud_vSphere_Disk_3.id}'
  Cloud_vSphere_Disk_1:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1
      SCSIController: SCSI_Controller_2
      unitNumber: 0
  Cloud_vSphere_Disk_2:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1
      SCSIController: SCSI_Controller_2
      unitNumber: 1
  Cloud_vSphere_Disk_3:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1
      SCSIController: SCSI_Controller_3
      unitNumber: 4

Option 2: Nur den SCSI-Controller festlegen

Sie können den SCSI-Controller angeben und die Einheitennummer weglassen. In diesem Fall entspricht die Zuweisung des SCSI-Controllers dem von Ihnen eingegebenen Wert. Die Einheitennummer wird auf die erste verfügbare Einheitennummer unter diesem Controller festgelegt.

resources:
  Cloud_vSphere_Machine_1:
    type: Cloud.vSphere.Machine
    properties:
      image: centos
      cpuCount: 1
      totalMemoryMB: 1024
      attachedDisks:
        - source: '${resource.Cloud_vSphere_Disk_1.id}'
        - source: '${resource.Cloud_vSphere_Disk_2.id}'
        - source: '${resource.Cloud_vSphere_Disk_3.id}'
  Cloud_vSphere_Disk_1:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1
      SCSIController: SCSI_Controller_0
  Cloud_vSphere_Disk_2:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1
      SCSIController: SCSI_Controller_0
  Cloud_vSphere_Disk_3:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1
      SCSIController: SCSI_Controller_1

Option 3: Beide Eigenschaften weglassen

Sie können den SCSI-Controller und die Einheitennummer weglassen. In diesem Fall wird die Zuweisung auf den ersten verfügbaren SCSI-Controller und die erste verfügbare Einheitennummer unter diesem Controller festgelegt.

resources:
  Cloud_vSphere_Machine_1:
    type: Cloud.vSphere.Machine
    properties:
      image: centos
      cpuCount: 1
      totalMemoryMB: 1024
      attachedDisks:
        - source: '${resource.Cloud_vSphere_Disk_1.id}'
        - source: '${resource.Cloud_vSphere_Disk_2.id}'
        - source: '${resource.Cloud_vSphere_Disk_3.id}'
  Cloud_vSphere_Disk_1:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1
  Cloud_vSphere_Disk_2:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1
  Cloud_vSphere_Disk_3:
    type: Cloud.vSphere.Disk
    properties:
      capacityGb: 1

Keine Option: Nur LUN

Es ist nicht möglich, den SCSI-Controller wegzulassen und nur eine Einheitennummer anzugeben. Dies zu tun, kann zu einer Bereitstellung führen, bei der mehrere SCSI-Controller über eine Festplatte mit der angegebenen Nummer verfügen, Sie jedoch bei der Verwaltung nicht wissen, welche Festplatte welche ist.

Verwenden von Eingaben zum Festlegen des SCSI-Controllers und der LUN

Um das Design dynamischer zu gestalten, verwenden Sie Eingaben, damit der Benutzer zum Zeitpunkt einer entsprechenden Anforderung oder Aktualisierung den SCSI-Controller und die Einheitennummer angeben kann.

inputs:
  diskProperties:
    type: array
    minItems: 1
    maxItems: 10
    items:
      type: object
      properties:
        size:
          type: integer
        SCSIController:
          type: string
          title: SCSI Controller
          enum:
            - SCSI_Controller_0
            - SCSI_Controller_1
            - SCSI_Controller_2
            - SCSI_Controller_3
        unitNumber:
          type: integer
          title: Unit Number
          
resources:
  app:
    type: Cloud.vSphere.Machine
    allocatePerInstance: true
    properties:
      flavor: small
      image: centos
      attachedDisks: '${map_to_object(slice(resource.disk[*].id, 0, 4), ''source'')}'
  disk:
    type: Cloud.vSphere.Disk
    allocatePerInstance: true
    properties:
      capacityGb: '${input.diskProperties[count.index].size}'
      SCSIController: '${input.diskProperties[count.index].SCSIController}'
      unitNumber: '${input.diskProperties[count.index].unitNumber}'
      count: ${length(input.diskProperties)}
Terraform-CLI-URL