O artigo descreve como implementar um conjunto de escalonamento usando uma combinação de instâncias, diferentes tamanhos de máquinas virtuais (VM) e uma estratégia de alocação.
- Vá para Conjuntos de dimensionamento de máquinas virtuais.
- Selecione o botão Criar para ir para a vista Criar um conjunto de escala de máquina virtual.
-
Na guia Noções básicas, preencha os campos obrigatórios. Se o campo não for chamado nas próximas seções, você poderá definir os campos para o que funciona melhor para seu conjunto de escalas.
- Certifique-se de selecionar uma região na qual a combinação de instâncias é suportada.
- Certifique-se de que o modo de orquestração está definido como Flexível.
- Na seção Tamanho , clique em Selecionar até 5 tamanhos e a página Selecionar um tamanho de VM será exibida.
- Use o seletor de tamanho para selecionar até cinco tamanhos de VM. Depois de selecionar os tamanhos da VM, clique no botão Selecionar na parte inferior da página para retornar à guia Noções básicas do conjunto de escalas.
- No campo Estratégia de alocação , selecione sua estratégia de alocação.
- Usando a estratégia de
Prioritized (preview)
alocação, a seção Tamanho da Classificação aparece abaixo da seção Estratégia de alocação. Clicar na prioridade de classificação inferior exibe a folha de priorização, onde você pode ajustar a prioridade dos tamanhos da VM.
- Você pode especificar outras propriedades em guias subsequentes ou pode ir para Revisar + criar e selecionar o botão Criar na parte inferior da página para iniciar a implantação do conjunto de escala de combinação de instâncias.
Antes de usar comandos da CLI com combinação de instâncias, verifique se você está usando a versão correta da CLI. Certifique-se de que está a utilizar a versão 2.66.0
ou superior.
Você pode usar o seguinte comando básico para criar um conjunto de escala usando a mistura de instâncias, cujo padrão é usar a estratégia de alocação lowestPrice
:
az vmss create \
--name {myVMSS} \
--resource-group {myResourceGroup} \
--image ubuntu2204 \
--vm-sku Mix \
--skuprofile-vmsizes Standard_DS1_v2 Standard_D2s_v4
Para especificar a estratégia de alocação, use o --skuprofile-allocation-strategy
parâmetro, como o seguinte comando:
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
Você pode usar o seguinte comando básico para criar um conjunto de escala usando a combinação de instâncias usando o seguinte comando, que será padrão para usar a estratégia de lowestPrice
alocação:
New-AzVmss `
-ResourceGroupName $resourceGroupName `
-Credential $credentials `
-VMScaleSetName $vmssName `
-DomainNameLabel $domainNameLabel1 `
-VMSize "Mix" `
-SkuProfileVmSize @("Standard_D4s_v3", "Standard_D4s_v4");
Para especificar a estratégia de alocação, use o SkuProfileAllocationStrategy
parâmetro, como o seguinte comando:
New-AzVmss `
-ResourceGroupName $resourceGroupName `
-Credential $credentials `
-VMScaleSetName $vmssName `
-DomainNameLabel $domainNameLabel1 `
-SkuProfileVmSize @("Standard_D4s_v3", "Standard_D4s_v4") `
-SkuProfileAllocationStrategy "CapacityOptimized";
Para criar um conjunto de escalas usando um objeto de configuração de conjunto de escalas utilizando instâncias misturadas, use o seguinte comando:
$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
Para implantar um conjunto de dimensionamento com combinação de instâncias usando a API REST, faça uma PUT
solicitação para o seguinte ponto de extremidade:
PUT https://management.azure.com/subscriptions/{YourSubscriptionId}/resourceGroups/{YourResourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{yourScaleSetName}?api-version=2023-09-01
No corpo da solicitação, defina sku.name
como Mix
e especifique o número total de VMs:
"sku": {
"name": "Mix",
"capacity": {TotalNumberVMs}
},
Faça referência à sua sub-rede existente, da seguinte forma:
"subnet": {
"id": "/subscriptions/{YourSubscriptionId}/resourceGroups/{YourResourceGroupName}/providers/Microsoft.Network/virtualNetworks/{YourVnetName}/subnets/default"
},
Especifique o skuProfile
com até cinco tamanhos de VM. O exemplo a seguir usa três tamanhos e a estratégia de alocação lowestPrice
:
"skuProfile": {
"vmSizes": [
{ "name": "Standard_D8s_v5"},
{ "name": "Standard_D8as_v5"},
{ "name": "Standard_D8s_v4"}
],
"allocationStrategy": "lowestPrice"
},
Se usar a estratégia de alocação Prioritized (preview)
, pode atribuir uma prioridade a cada tamanho de VM. Por exemplo:
"skuProfile": {
"vmSizes": [
{ "name": "Standard_D8s_v5", "rank": 1 },
{ "name": "Standard_D8as_v5", "rank": 2 },
{ "name": "Standard_D8s_v4", "rank": 3 }
],
"allocationStrategy": "Prioritized"
},
- Substitua os espaços reservados, como
{YourSubscriptionId}
, pelos valores reais.
- Você pode especificar até cinco tamanhos de VM na
vmSizes
matriz.
- A propriedade
rank
é necessária apenas ao usar a estratégia de alocação Prioritized (preview)
.