若要管理 SCSI 磁碟,您必須指定並瞭解其 SCSI 控制器和邏輯單元編號 (LUN)。對於 vSphere 磁碟物件,您可以使用 Cloud Assembly 在雲端範本中同時指派這兩個值。
使用不同 SCSI 控制器的功能對於效能至關重要,並且對於某些部署類型 (例如 Oracle Real Application Clusters (RAC)) 來說十分必要。
SCSI 控制器和 LUN 磁碟內容
若要指派 SCSI 控制器和 LUN,請新增下列雲端範本內容:
SCSIController
unitNumber
此外,還可以選擇略過內容,在此情況下指派會遵循可預測的預設值。Cloud Assembly 不再以隨機順序部署 SCSI 磁碟,使得這些磁碟難以管理。
SCSI 控制器和磁碟按順序進行編號,第一個是 0。每個 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)}