Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
A colocação automática de zonas para Conjuntos de Dimensionamento de Máquinas Virtuais permite ao Azure selecionar zonas de disponibilidade para o seu conjunto de escalas com base na capacidade e disponibilidade do SKU. Em vez de especificar uma lista fixa de zonas para cada região, configura os seus requisitos de colocação e o Azure seleciona as zonas que melhor os satisfazem.
A colocação automática por zonas é suportada para Conjuntos de Dimensionamento de Máquinas Virtuais com os modos de orquestração Uniforme e Flexível.
Importante
A colocação automática de zonas para Conjuntos de Dimensionamento de Máquinas Virtuais está atualmente em pré-visualização. As visualizações prévias são disponibilizadas para você na condição de que você concorde com os termos de uso suplementares. Alguns aspetos desta funcionalidade podem mudar antes da disponibilidade geral (GA).
Como funciona a colocação automática das zonas
A colocação automática de zonas avalia a disponibilidade, capacidade e quaisquer restrições de colocação dos SKUs que configure para selecionar zonas de disponibilidade e colocar instâncias de VM.
Por defeito, o conjunto de dimensionamento procura distribuir as instâncias por três zonas de disponibilidade. Se configurares maxZoneCount, o conjunto de dimensionamento passa antes a procurar distribuir as instâncias por esse número de zonas e nunca ultrapassa o limite configurado. O posicionamento efetivo depende da disponibilidade da SKU, da capacidade, da distribuição atual pelas zonas do conjunto de dimensionamento e das suas outras restrições de posicionamento. Quando maxZoneCount não está configurado e a região tem mais de três zonas de disponibilidade, o conjunto de escalas pode expandir-se para além da sua distribuição padrão por três zonas, por exemplo, para uma quarta zona, se as zonas atuais não conseguirem satisfazer um pedido de aumento de escala.
Por predefinição, posicionamento automático da zona:
- Tem como objetivo uma distribuição equilibrada em três zonas de disponibilidade.
- Requer que as instâncias sejam distribuídas por pelo menos duas zonas de disponibilidade.
- Limita o número de instâncias numa única zona a 50 por cento do conjunto de escalas.
- Pode expandir-se para zonas de disponibilidade adicionais se as zonas atuais não tiverem capacidade suficiente para mais instâncias e houver outra zona disponível na região.
Se a capacidade não estiver disponível para satisfazer todos os requisitos de colocação, o Azure aloca tantas instâncias quanto a política permitir e as restantes instâncias podem não ser aprovisionadas. Este comportamento é uma falha parcial de alocação, não uma falha de todo o pedido.
Observação
A colocação automática de zonas seleciona zonas quando novas instâncias são criadas. Não move nem recria instâncias existentes para corrigir um desequilíbrio de zona. Para corrigir proativamente um desequilíbrio existente, veja Equilíbrio Automático de Zonas.
Quando usar a colocação automática das zonas
Use a colocação automática das zonas quando:
- Queres um conjunto de escalas zonal ou que abrange zonas, mas não exija que as instâncias sejam colocadas em zonas de disponibilidade específicas. Pode definir os seus requisitos de dispersão de zonas e permitir que o Azure selecione as zonas.
- Implementa em várias regiões onde a disponibilidade de SKUs por zona difere. A colocação automática das zonas ajuda-te a aplicar uma configuração consistente em vez de manter listas de zonas específicas por região.
- Quer que o Azure considere os sinais de capacidade atuais ao selecionar zonas de disponibilidade.
Utilize zonas de disponibilidade selecionadas pelo cliente em alternativa quando a sua carga de trabalho tiver de utilizar zonas específicas para cada operação de colocação.
Prerequisites
Antes de configurar a colocação automática das zonas, certifique-se de que:
- Estás a usar a versão
2026-03-01da API de Computação ou posterior. - Implementas o conjunto de escalas numa região pública do Azure que suporta zonas de disponibilidade.
Registe a subscrição na AFEC
A sua subscrição deve estar registada com o sinalizador Azure Feature Exposure Control (AFEC) Microsoft.Compute/VmssAutomaticZonePlacement. Este registo é necessário para ativar a funcionalidade automática de colocação de zonas na sua subscrição.
- Inicie sessão no portal Azure.
- Na caixa de pesquisa, introduza subscrições e depois selecione Subscrições.
- Selecione sua subscrição.
- Em Definições, selecione Funcionalidades de Pré-visualização.
- Procure VmssAutomaticZonePlacement e, em seguida, selecione a funcionalidade.
- Selecione Registar.
Limitations
- Um conjunto de escalas pode usar a
zonespropriedade para zonas selecionadas pelo cliente ouplacement.zonePlacementPolicypara colocação automática de zonas, mas não ambos. - Grupos de colocação de proximidade não são suportados.
- Grupos de reserva de capacidade não são suportados.
- O Instance Mix for Conjuntos de Dimensionamento de Máquinas Virtuais não é suportado durante a pré-visualização pública. Apoio esperado por parte da GA.
- Piscinas de reserva não são suportadas.
- Grupos de anfitriões dedicados não são suportados.
- As zonas periféricas não são suportadas.
- O sobreabastecimento não é suportado. Certifique-se de que
overprovisionestá definido comofalseantes de adicionarplacement.zonePlacementPolicy; caso contrário, a implantação falha. - Os conjuntos de dimensionamento do Service Fabric não são suportados.
- Criar e anexar uma nova VM não é suportado. Pode anexar uma VM zonal existente se a respetiva zona for compatível com a configuração de posicionamento do conjunto de dimensionamento.
Propriedades de configuração
O exemplo seguinte mostra onde as propriedades automáticas de colocação de zonas aparecem num modelo de conjunto à escala. Só placement.zonePlacementPolicy é obrigatório. Todas as outras propriedades são opcionais.
{
"placement": {
"zonePlacementPolicy": "auto",
"includeZones": [
"1",
"2",
"4"
]
},
"properties": {
"zoneBalance": false,
"resiliencyPolicy": {
"zoneAllocationPolicy": {
"maxZoneCount": 2,
"maxInstancePercentPerZonePolicy": {
"enabled": true,
"value": 70
}
}
}
}
}
Observação
Use includeZones ou excludeZones. Não podes configurar ambas as propriedades no mesmo conjunto de escala.
As seguintes propriedades controlam o comportamento automático de colocação das zonas:
| Property | Description |
|---|---|
placement.zonePlacementPolicy |
Required. Defina como "auto" para ativar o posicionamento automático de zonas. |
placement.includeZones |
Optional. Uma lista de zonas de disponibilidade que o Azure pode considerar para colocação. O Azure seleciona apenas zonas desta lista, mas pode não implementar instâncias em todas as zonas listadas. Não pode usar esta propriedade com excludeZones. |
placement.excludeZones |
Optional. Uma lista de zonas que o Azure deve excluir da colocação. Não pode usar esta propriedade com includeZones. |
zoneBalance |
Optional. Controla o equilíbrio entre zonas durante operações de dimensionamento. A predefinição é false, que utiliza balanceamento de melhor esforço. Quando ativas zoneBalance com a colocação automática da zona, também tens de especificar maxZoneCount. Quando zoneBalance é false, maxZoneCount é opcional. |
resiliencyPolicy.zoneAllocationPolicy.maxZoneCount |
Optional. O número máximo de zonas que o conjunto de escalas pode usar. Se não especificar esta propriedade, o Azure visa três zonas e pode expandir-se para zonas adicionais quando necessário para satisfazer um pedido de escalabilidade. |
resiliencyPolicy.zoneAllocationPolicy.maxInstancePercentPerZonePolicy.enabled |
Optional. Ativa ou desativa a política de percentagem máxima de instâncias por zona. Esta política é suportada apenas quando zoneBalance é false. |
resiliencyPolicy.zoneAllocationPolicy.maxInstancePercentPerZonePolicy.value |
Optional. A percentagem máxima da capacidade alvo de um conjunto de escalas que pode ser alocada a uma única zona. Se atender um pedido ultrapassar este valor, o Azure aloca as instâncias que estão em conformidade com a política e as restantes instâncias poderão não ser aprovisionadas. |
Crie um conjunto de escalas com colocação automática das zonas
Os cenários seguintes mostram como configurar a colocação automática das zonas e explicam o comportamento esperado de colocação. Conclua a configuração dos perfis do sistema operativo, do armazenamento e da rede antes de implementar o conjunto de dimensionamento.
Usar o comportamento de posicionamento padrão
Adicione placement.zonePlacementPolicy ao recurso do conjunto de escalas. Use a versão 2026-03-01 da API de Computação ou posterior.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
{
"placement": {
"zonePlacementPolicy": "auto"
}
}
Adicione esta configuração a um pedido completo de Virtual Machine Scale Set.
Comportamento esperado
Se não especificar quaisquer restrições de colocação, o Azure distribui as instâncias de forma uniforme por três zonas. Por exemplo, um conjunto de escalas com 100 instâncias pode ter uma distribuição de 34, 33 e 33.
Se não for possível uma distribuição uniforme de três zonas, o Azure exige que as instâncias abrangam pelo menos duas zonas e aplica um limite padrão de 50 por cento das instâncias em cada zona. A plataforma aplica este limite mesmo quando maxInstancePercentPerZonePolicy não está explicitamente configurada.
Por exemplo, suponha que solicita 100 instâncias e a capacidade disponível em três zonas é 70, 30 e 0. O Azure tenta uma distribuição de 50, 30 e 20. Como a terceira zona não tem capacidade, a distribuição final é 50, 30 e 0, e 20 instâncias falham em provisionamento. Para dar prioridade ao êxito da alocação em detrimento do limite predefinido de distribuição, configure um valor mais elevado de maxInstancePercentPerZonePolicy.value.
Configurar zonas elegíveis
Utilize includeZones ou excludeZones para controlar que zonas o Azure considera durante a implementação. Não podes configurar ambas as propriedades no mesmo conjunto de escala.
O exemplo seguinte restringe o Azure apenas a considerar zonas 1 e 2 para a colocação.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
{
"placement": {
"zonePlacementPolicy": "auto",
"includeZones": [
"1",
"2"
]
}
}
Alternativamente, use excludeZones para impedir que o Azure selecione zonas específicas. O exemplo seguinte exclui a zona 3:
{
"placement": {
"zonePlacementPolicy": "auto",
"excludeZones": [
"3"
]
}
}
Comportamento esperado
Ao configurarincludeZones, o Azure seleciona apenas zonas da lista especificada. Esta definição não garante que o Azure coloque instâncias em todas as zonas listadas. O Azure continua a considerar a capacidade, a disponibilidade de SKU, a distribuição atual e outras restrições de colocação ao colocar instâncias.
Quando configuras excludeZones, o Azure não seleciona nem coloca novas instâncias nas zonas excluídas. Todas as outras zonas apoiadas continuam elegíveis. Não se podem combinar includeZones e excludeZones no mesmo conjunto de escalas.
Limitar a percentagem de instâncias numa única zona
Use maxInstancePercentPerZonePolicy para controlar a percentagem máxima da capacidade alvo de um conjunto de escalas que pode ser alocada a qualquer zona. Uma percentagem maior dá ao Azure mais flexibilidade para satisfazer pedidos de alocação, mas permite concentrar mais instâncias numa só zona.
A política é suportada apenas quando zoneBalance é false.
Percentagem mínima de instâncias
O valor mínimo depende do número de zonas elegíveis para implementação depois de o Azure aplicar includeZones, excludeZones e maxZoneCount:
minimum instance percentage = ceil(100 / number of eligible zones)
Por exemplo, suponha includeZones que contém zonas 1, 2, e 4, e maxZoneCount é 2. O número efetivo de zonas elegíveis é dois, pelo que a percentagem mínima válida é 50.
Número máximo de instâncias numa zona
O Azure calcula o número máximo de instâncias permitidas numa zona com base na capacidade-alvo do conjunto de escala:
maximum instances per zone = ceil(maximum instance percentage * target capacity / 100)
Azure arredonda o resultado para cima para o número inteiro mais próximo. Por exemplo, se a capacidade alvo for de 101 instâncias e a percentagem máxima de instâncias for 85, o conjunto de escalas pode colocar até 86 instâncias numa única zona.
O exemplo seguinte permite até 85 por cento das instâncias numa zona:
PUT or PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
{
"placement": {
"zonePlacementPolicy": "auto"
},
"properties": {
"resiliencyPolicy": {
"zoneAllocationPolicy": {
"maxInstancePercentPerZonePolicy": {
"enabled": true,
"value": 85
}
}
}
}
}
Comportamento esperado
O Azure tenta primeiro distribuir as instâncias de forma uniforme por três zonas. Se uma distribuição uniforme não for possível, o Azure pode alocar até 85 por cento das instâncias a uma zona. Esta configuração dá ao Azure mais flexibilidade para satisfazer pedidos de alocação, mas permite uma maior concentração de instâncias numa zona.
Depois de uma zona atingir o máximo calculado, o Azure tenta colocar as instâncias restantes noutras zonas elegíveis. Se essas zonas não tiverem capacidade suficiente, as restantes instâncias podem falhar em provisionamento.
Por exemplo, suponha que solicita 100 instâncias e a capacidade disponível em três zonas é 90, 10 e 0. O Azure tenta uma distribuição de 85, 10 e 5. Como a terceira zona não tem capacidade, a distribuição final é 85, 10 e 0, e cinco instâncias falham na provisão.
Utilize um equilíbrio estrito de zonas
Defina zoneBalance como true para exigir uma distribuição equilibrada entre as zonas selecionadas. Deve especificar maxZoneCount quando o equilíbrio estrito de zonas está ativado.
O exemplo seguinte permite um balanceamento rigoroso entre três zonas.
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
{
"placement": {
"zonePlacementPolicy": "auto"
},
"properties": {
"zoneBalance": true,
"resiliencyPolicy": {
"zoneAllocationPolicy": {
"maxZoneCount": 3
}
}
}
}
Comportamento esperado
O Azure exige que as contagens de instâncias entre as zonas selecionadas permaneçam dentro de uma única instância umas das outras. Quando definir maxZoneCount para 3, o Azure seleciona até três zonas e mantém um equilíbrio estrito entre as zonas utilizadas.
Se o Azure não conseguir manter um equilíbrio estrito devido à capacidade ou disponibilidade de zonas, as instâncias que não podem ser incluídas na política deixam de ser provisionadas. Um equilíbrio estrito de zonas pode, portanto, reduzir o sucesso da alocação em comparação com o equilíbrio de melhor esforço.
Ativar a colocação automática de zonas num conjunto de escalas existente
Pode ativar a colocação automática de zonas num conjunto de escalas existente que utilize zonas selecionadas pelo cliente ou colocação regional.
Warning
Depois de ativares a colocação automática de zonas num conjunto de escalas regionais, não podes voltar o conjunto de escalas para a colocação regional. As instâncias regionais existentes mantêm-se regionais, mas o Azure coloca novas instâncias em zonas de disponibilidade.
Antes de ativar a colocação automática de zonas num conjunto de escalas regionais, consulte Preparar para a expansão da zona.
Para um conjunto de escalas que utiliza zonas selecionadas pelo cliente, limpe a zones propriedade e defina placement.zonePlacementPolicy para auto na mesma operação de atualização. Para um conjunto de escalas regionais, defina placement.zonePlacementPolicy para auto.
Envie um PATCH pedido para o seguinte ponto final:
PATCH https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Compute/virtualMachineScaleSets/{vmScaleSetName}?api-version=2026-03-01
Para um conjunto de escalas que utiliza zonas selecionadas pelo cliente, limpe zones e ative a colocação automática das zonas no mesmo pedido:
{
"zones": [],
"placement": {
"zonePlacementPolicy": "auto"
}
}
Para um conjunto de escalas regionais, ative a colocação automática da zona sem especificar zones:
{
"placement": {
"zonePlacementPolicy": "auto"
}
}
Comportamento esperado
A atualização permite a colocação automática de zonas para novas instâncias. As instâncias existentes não são movidas nem recriadas.
Para um conjunto de escalas que utiliza zonas selecionadas pelo cliente, as instâncias existentes permanecem nas suas zonas de disponibilidade atual. Para um conjunto de escalas regionais, as instâncias regionais existentes mantêm-se regionais. O Azure utiliza a colocação automática de zonas quando coloca novas instâncias.
Se os seus requisitos de colocação mudarem, pode voltar da colocação automática em zonas para zonas selecionadas pelo cliente. Na mesma operação de atualização, apagar placement.zonePlacementPolicy e definir a propriedade zones. Esta atualização não move nem recria instâncias existentes.