SCSI ディスクを管理するには、その SCSI コントローラと論理ユニット番号 (LUN) を指定し、把握しておく必要があります。vSphere のディスク オブジェクトに対しては、どちらの値もクラウド テンプレートで Cloud Assembly を使用して割り当てることができます。
複数の SCSI コントローラを使用する機能はパフォーマンスにとって重要であり、Oracle Real Application Clusters (RAC) などの一部の展開タイプでは必須です。
SCSI コントローラと LUN ディスクのプロパティ
SCSI コントローラと LUN を割り当てるには、次のクラウド テンプレート プロパティを追加します。
SCSIController
unitNumber
プロパティを省略することもできます。その場合、割り当ては予測可能なデフォルト値に従います。管理のしにくさを招いていた、Cloud Assembly による SCSI ディスクのランダムな展開は行われなくなりました。
SCSI コントローラとディスクには、ゼロから始まる番号が順番に付けられます。各 SCSI コントローラは、ユニット番号 0 ~ 15 の SCSI ディスクをサポートできます。
オプション 1:SCSI コントローラとユニット番号の両方を設定
次の例に示すように、両方のプロパティを全面的に指定できます。この場合、SCSI コントローラとユニット番号の割り当ては、入力された値と一致します。
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
オプション 2:SCSI コントローラのみを設定
SCSI コントローラを指定して、ユニット番号は省略することができます。この場合、SCSI コントローラの割り当ては、入力された値と一致します。ユニット番号は、そのコントローラで最初に使用可能なユニット番号に設定されます。
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
オプション 3:両方のプロパティを省略
SCSI コントローラとユニット番号を省略することもできます。この場合、割り当ては最初に使用可能な SCSI コントローラと、そのコントローラで最初に使用可能なユニット番号に設定されます。
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
許可されないオプション:LUN のみ
SCSI コントローラを省略してユニット番号のみを指定することはできません。このように指定すると、展開に含まれる複数の SCSI コントローラがその番号のディスクを持つことになり、管理の際にディスクを区別できなくなります。
入力を使用して SCSI コントローラと LUN を設定する
デザインをより動的にするには、入力を使用してユーザーが申請時または更新時に SCSI コントローラとユニット番号を指定できるようにします。
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)}