Azure 電腦隊的屬性型 VM 選取專案 (預覽)
重要
屬性型 VM 選取專案目前為預覽狀態。 若您同意補充的使用規定即可取得預覽。 在公開上市 (GA) 之前,此功能的某些領域可能會變更。
屬性型虛擬機 (VM) 選取功能可讓您將實例需求設定為一組 VM 屬性,例如記憶體、vCPU 和記憶體。 這些需求會與所有適當的 Azure VM 大小相符,以簡化 VM 設定的建立和維護。 這項功能也可讓您順暢地利用較新的 VM 世代,因為它們可供使用。 您也可以透過 Azure Spot 虛擬機器 存取更廣泛的容量。 計算機隊服務會選取並啟動符合指定屬性的 VM,而不需要手動選擇 VM 大小。
屬性型 VM 選擇適用於無狀態 Web 服務、大規模批處理、巨量數據叢集或持續整合管線等案例。 財務風險模型化、記錄處理和影像轉譯等工作負載可以利用執行數十萬個並行核心或實例的能力。 利用Spot 虛擬機器,而不是個別指定許多VM大小和類型時,簡單的屬性設定現在可以包含所有相關選項,包括發行時的新選項。
必要條件
若要使用屬性型 VM 選取專案,您必須 註冊 Azure Compute Fleet 預覽功能。 完成註冊表單並核准之後,您將會連絡後續步驟和上線詳細數據。
福利
- 現成 VM 的最佳彈性:計算機隊在部署 Spot 虛擬機器 時提供最佳彈性,方法是從各種不同的 VM 大小中選取。 此程式可藉由確保 VM 大小選取的彈性,以符合 Spot 使用量的最佳做法,進而改善 Azure Spot VM 開會和配置所需計算容量的可能性。
- 簡化的 VM 類型選取:使用大量可用的 VM 大小,找出最適合您工作負載的工作可能是一項複雜的工作。 藉由指定 VM 屬性,Azure 虛擬機器擴展集 可以自動選取符合您工作負載需求的 VM 大小。 此自動化可簡化程式,並確保選擇正確的資源。
- 自動採用新的 VM 大小:Azure 虛擬機器擴展集 可以在新一代 VM 大小可供使用時自動納入新一代 VM 大小。 當這些新的 VM 大小符合您指定的需求,並與您選擇的配置策略一致時,擴展集會順暢地使用它們,以確保您的部署受益於最新進展,而不需要手動更新。
處理
屬性型 VM 選取如何運作? 此程式包含兩個主要步驟: VM 類型判斷,後面接著 配置策略應用程式。
- VM 類型判斷:屬性型選取專案會根據指定的屬性、所選的 Azure 區域和 可用性區域,產生 VM 類型的清單。
- 配置策略應用程式:計算機隊會將選取的配置策略套用至產生的 VM 清單。
針對 Azure Spot VM,屬性型選取支援容量優化和最低價格配置策略。 針對標準 VM,屬性型選取支援最低價格配置策略。 計算機隊會將屬性組態解析為適當的 VM 類型清單,並一開始啟動最低價格的 VM 以符合容量要求的隨選部分,並視需要繼續進行下一個最低價格的 VM。
屬性型選取功能可啟用更具彈性的 VM 類型組態,而不需要大量實例類型清單。 如此一來,當您選取的 Azure 區域中引進新 VM 世代時,就會自動運用較新的 VM 世代。 此外,屬性型選取可透過現成要求有效率地存取更多容量的能力。
使用以屬性為基礎的選擇,管理 VM 大小設定會變得更容易且更具延展性,確保您的工作負載能以優化的成本和效能順暢地執行。
支援的 VM 屬性
支援下列 VM 屬性清單,並提供組態範例。
vCpuCount
- 必要
- 如果
VMAttributes
指定 ,則必須指定 - 從最小值到最大值指定的範圍
vCpuCount
min(uint)
如果指定 ,則需要 或max(uint)
"vCpuCount": {
"value": {
"min": 2,
"max": 24
}
}
memoryInGiB
- 必要
- 如果
VMAttributes
指定 ,則必須指定 - 從最小值到最大值指定的範圍
memoryInGiB
min(double)
如果指定 ,則需要 或max(double)
"memoryInGiB": {
"value": {
"min": 0,
"max": 1024
}
}
memoryInGiBPerVCpu
- 選擇性
- 從最小值到最大值指定的範圍
memoryInGiBPerVCpu
min(double)
如果指定 ,則需要 或max(double)
"memoryInGiBPerVCpu": {
"value": {
"min": 0,
"max": 8
}
}
localStorageSupport
- 選擇性
- 指定是否應該使用支援本機記憶體的 VM 大小來建置計算機隊
- 可能的值:
- 排除 - 不包含支援本機記憶體的 VM 大小
- 必要 - 僅包含支援本機記憶體的 VM 大小
- 包含 - 包含支援且不支援本機記憶體的 VM 大小,如果未
localStorageSupport
指定,則為預設值
"localStorageSupport": "Included"
localStorageInGiB
- 選擇性
- 從最小值到最大值指定的範圍
localStorageInGiB
min(double)
如果指定 ,則需要 或max(double)
localStorageSupport
應設定為 Included 或 Required ,才能使用此 VM 屬性- 如果
localStorageSupport
設定為 [已排除],則無法使用此 VM 屬性
"localStorageInGiB": {
"value": {
"min": 0,
"max": 100
}
}
localStorageDiskTypes
- 選擇性
localStorageDiskTypes
指定為清單- 有效值為 SSD 和 HDD
localStorageSupport
應設定為 Included 或 Required ,才能使用此 VM 屬性- 如果
localStorageSupport
設定為 [已排除],則無法使用此 VM 屬性 - 若未指定,則為
localStorageDiskTypes
的預設值為 任何 有效值
"localStorageDiskTypes": {
"value": [
"SSD",
"HDD"
]
}
dataDiskCount
- 選擇性
- 從
min
到指定的範圍dataDiskCount
max
min(uint)
如果指定 ,則需要 或max(uint)
"dataDiskCount": {
"value": {
"min": 0,
"max": 10
}
}
networkInterfaceCount
- 選擇性
- 從
min
到指定的範圍networkInterfaceCount
max
min(uint)
如果指定 ,則需要 或max(uint)
"networkInterfaceCount": {
"value": {
"min": 0,
"max": 10
}
}
networkBandwidthInMbps
- 選擇性
- 從
min
到指定的範圍networkBandwidthInMbps
max
min(double)
如果指定 ,則需要 或max(double)
"networkBandwidthInMbps": {
"value": {
"min": 0,
"max": 500
}
}
rdmaSupport
- 選擇性
- 指定是否應該使用支持遠端直接記憶體存取的 VM 大小 (RDMA) 來建置計算機隊
- 可能的值:
- 排除 - 不包含支援 RDMA 的 VM 大小,如果未
rdmaSupport
指定,則為預設值 - 必要 - 僅包含支援 RDMA 的 VM 大小
- 包含 - 包含支援和不支援 RDMA 的 VM 大小
- 排除 - 不包含支援 RDMA 的 VM 大小,如果未
"rdmaSupport": "Included"
rdmaNetworkInterfaceCount
- 選擇性
- 從
min
到指定的範圍rdmaNetworkInterfaceCount
max
min(uint)
如果指定 ,則需要 或max(uint)
rdmaSupport
應設定為 Included 或 Required ,才能使用此 VM 屬性- 如果
rdmaSupport
設定為 [已排除],則無法使用此 VM 屬性
"rdmaNetworkInterfaceCount": {
"value": {
"min": 0,
"max": 10
}
}
acceleratorSupport
- 選擇性
- 指定 VM 大小支援加速器是否應該用來建置計算機隊
- 可能的值:
- 排除 - 不包含支援加速器的 VM 大小,如果未
acceleratorSupport
指定,則為預設值 - 必要 - 僅包含支援加速器的 VM 大小
- 包含 - 包含支援且不支援加速器的 VM 大小
- 排除 - 不包含支援加速器的 VM 大小,如果未
"acceleratorSupport": "Required"
acceleratorManufacturers
- 選擇性
acceleratorManufacturers
指定為清單- 有效值為 AMD、 Nvidia 和 Xilinx
acceleratorSupport
應設定為 Included 或 Required ,才能使用此 VM 屬性- 如果
acceleratorSupport
設定為 [已排除],則無法使用此 VM 屬性 - 若未指定,則為
acceleratorManufacturers
的預設值為 任何 有效值
"acceleratorManufacturers": {
"value": {
"Nvidia",
"Xilinx"
}
}
acceleratorCount
- 選擇性
- 的範圍
acceleratorCount
是從到min
max
min(uint)
如果指定 ,則需要 或max(uint)
acceleratorSupport
應設定為 Included 或 Required ,才能使用此 VM 屬性- 如果
acceleratorSupport
設定為 [已排除],則無法使用此 VM 屬性
"acceleratorCount": {
"value": {
"min": 0,
"max": 10
}
}
acceleratorTypes
- 選擇性
acceleratorTypes
指定為清單- 有效值為 GPU 和 FPGA
acceleratorSupport
應設定為 Included 或 Required ,才能使用此 VM 屬性- 如果
acceleratorSupport
設定為 [已排除],則無法使用此 VM 屬性 - 若未指定,則為
acceleratorTypes
的預設值為 任何 有效值
"acceleratorTypes": {
"value": {
"GPU",
"FPGA"
}
}
vmCategories
- 選擇性
vmCategories
指定為清單- 有效值為:
- GeneralPurpose
- ComputeOptimized
- MemoryOptimized
- StorageOptimized
- GpuAccelerated
- FpgaAccelerated
- HighPerformanceCompute
- 若未指定,則的
vmCategories
預設值為 GeneralPurpose
"vmCategories": {
"value": {
"GeneralPurpose",
"ComputeOptimized"
}
}
architectureTypes
- 選擇性
architectureTypes
指定為清單- 有效值為 X64 和 Arm64
- 若未指定,則的
architectureTypes
預設值為有效值的 “ANY”
"architectureTypes": {
"value": {
"Arm64",
"x64"
}
}
cpuManufacturers
- 選擇性
cpuManufacturers
指定為清單- 有效值為 Intel、 AMD、 Microsoft和 Ampere
- 若未指定,則的
cpuManufacturers
預設值為有效值的 “ANY”
"cpuManufacturers": {
"value": {
"Microsoft",
"Intel"
}
}
burstableSupport
- 選擇性
- 指定是否應該使用支援高載功能的 VM 大小來建置計算機隊
- 可能的值:
- 排除 - 不包含具有高載功能的 VM 大小,如果未
acceleratorSupport
指定,則為預設值 - 必要 - 僅包含具有高載功能的 VM 大小
- 包含 - 包含支援且不支援高載功能的 VM 大小
- 排除 - 不包含具有高載功能的 VM 大小,如果未
"burstableSupport": "Excluded"
excludeedVMSizes
- 選擇性
- 指定在建置計算艦隊時應排除哪些 VM 大小
- 即使它們符合 VM 屬性,全部
excludedVMSizes
都會被忽略 - 指定 VM 屬性時
excludedVMSizes
,VMSizesProfile
無法指定 ,反之亦然 - 限制為 100 個 VM 大小
"excludedVMSizes": {
"value": {
"Standard_F1",
"Standard_F2"
}
}
VMSizesProfile
- 選擇性
- 指定在建置計算艦隊時應排除哪些 VM 大小
- 所有其他 VM 大小都會被忽略,即使它們符合 VM 屬性
- 指定
excludedVMSizes
時VMSizesProfile
,無法指定 ,反之亦然 - 限制為 100 個 VM 大小
"VMSizesProfile": {
"value": {
{"name": "Standard_F1"},
{"name": "Standard_F2"}
}
}