- 转到“虚拟机规模集”。
- 选择“创建”按钮以转到“创建虚拟机规模集”视图。
- 在“基本信息”选项卡上填写必填字段。 如果后续部分中未调用该字段,则可以将字段设置为最适合规模集的字段。
- 确保选择支持 Instance Mix 的区域。
- 确保将“业务流程模式”设置为“灵活”。
- 在“ 大小 ”部分中,单击“ 最多选择 5 个大小 ”,此时会显示 “选择 VM 大小 ”页。
- 使用大小选取器选择最多五个 VM 大小。 选择 VM 大小后,单击页面底部的“选择”按钮以返回到规模集“基本信息”选项卡。
- 在 “分配策略 ”字段中,选择分配策略。
- 使用
Prioritized (preview)
分配策略时,“排名大小”部分显示在“分配策略”部分下方。 单击底部的排名优先级显示优先级边栏选项卡,可在其中调整 VM 大小的优先级。
- 可以在后续选项卡中指定其他属性,也可以转到“查看 + 创建”,然后选择页面底部的“创建”按钮以启动 Instance Mix 规模集部署。
在将 CLI 命令用于实例组合之前,请确保使用正确的 CLI 版本。 请确保使用的是版本 2.66.0
或更高版本。
可使用以下基本命令通过实例混合创建规模集,此命令默认使用 lowestPrice
分配策略:
az vmss create \
--name {myVMSS} \
--resource-group {myResourceGroup} \
--image ubuntu2204 \
--vm-sku Mix \
--skuprofile-vmsizes Standard_DS1_v2 Standard_D2s_v4
要指定分配策略,请使用 --skuprofile-allocation-strategy
参数,如以下命令所示:
az vmss create \
--name {myVMSS} \
--resource-group {myResourceGroup} \
--image ubuntu2204 \
--vm-sku Mix \
--skuprofile-vmsizes Standard_DS1_v2 Standard_D2s_v4 \
--skuprofile-allocation-strategy CapacityOptimized
可使用以下基本命令通过 Instance Mix 创建规模集,此命令默认使用 lowestPrice
分配策略:
New-AzVmss `
-ResourceGroupName $resourceGroupName `
-Credential $credentials `
-VMScaleSetName $vmssName `
-DomainNameLabel $domainNameLabel1 `
-VMSize "Mix" `
-SkuProfileVmSize @("Standard_D4s_v3", "Standard_D4s_v4");
要指定分配策略,请使用 SkuProfileAllocationStrategy
参数,如以下命令所示:
New-AzVmss `
-ResourceGroupName $resourceGroupName `
-Credential $credentials `
-VMScaleSetName $vmssName `
-DomainNameLabel $domainNameLabel1 `
-SkuProfileVmSize @("Standard_D4s_v3", "Standard_D4s_v4") `
-SkuProfileAllocationStrategy "CapacityOptimized";
若要使用利用 Instance Mix 的规模集配置对象创建规模集,请使用以下命令:
$vmss = New-AzVmssConfig -Location $loc -SkuCapacity 2 -UpgradePolicyMode 'Manual' -EncryptionAtHost -SecurityType $stnd -SkuProfileVmSize @("Standard_D4s_v3", "Standard_D4s_v4") -SkuProfileAllocationStrategy "CapacityOptimized"`
| Add-AzVmssNetworkInterfaceConfiguration -Name 'test' -Primary $true -IPConfiguration $ipCfg `
| Set-AzVmssOSProfile -ComputerNamePrefix 'test' -AdminUsername $adminUsername -AdminPassword $adminPassword `
| Set-AzVmssStorageProfile -OsDiskCreateOption 'FromImage' -OsDiskCaching 'None' `
-ImageReferenceOffer $imgRef.Offer -ImageReferenceSku $imgRef.Skus -ImageReferenceVersion 'latest' `
-ImageReferencePublisher $imgRef.PublisherName;
$vmssResult = New-AzVmss -ResourceGroupName $resourceGroupName -Name $vmssName -VirtualMachineScaleSet $vmss
若要使用 REST API 部署包含实例混合的规模集,请向以下终结点发出 PUT
请求:
PUT https://management.azure.com/subscriptions/{YourSubscriptionId}/resourceGroups/{YourResourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{yourScaleSetName}?api-version=2023-09-01
在请求正文中,设置为sku.name
Mix
并指定 VM 总数:
"sku": {
"name": "Mix",
"capacity": {TotalNumberVMs}
},
引用现有子网,如下所示:
"subnet": {
"id": "/subscriptions/{YourSubscriptionId}/resourceGroups/{YourResourceGroupName}/providers/Microsoft.Network/virtualNetworks/{YourVnetName}/subnets/default"
},
指定具有最多五个 VM 大小的 skuProfile
。 以下示例使用三种大小和 lowestPrice
分配策略:
"skuProfile": {
"vmSizes": [
{ "name": "Standard_D8s_v5"},
{ "name": "Standard_D8as_v5"},
{ "name": "Standard_D8s_v4"}
],
"allocationStrategy": "lowestPrice"
},
如果使用 Prioritized (preview)
分配策略,可以将优先级排名分配给每个 VM 大小。 例如:
"skuProfile": {
"vmSizes": [
{ "name": "Standard_D8s_v5", "rank": 1 },
{ "name": "Standard_D8as_v5", "rank": 2 },
{ "name": "Standard_D8s_v4", "rank": 3 }
],
"allocationStrategy": "Prioritized"
},
- 将占位符(例如
{YourSubscriptionId}
)替换为实际值。
- 最多可以在数组中指定五个
vmSizes
VM 大小。
- 仅当使用
rank
分配策略时,才需要Prioritized (preview)
属性。