Compartilhar via


Balanceamento de zona em Conjuntos de Dimensionamento de Máquinas Virtuais

Um conjunto de escalas abrangendo zonas espalha instâncias de VM (máquina virtual) entre várias zonas de disponibilidade e usa o balanceamento de zona para tentar distribuir uniformemente as instâncias entre as zonas que você selecionou. Este artigo discute como um conjunto de dimensionamento que abrange zonas usa o balanceamento de zona, incluindo a diferença entre conjuntos de dimensionamento equilibrado e não equilibrado, modos de balanceamento e como reequilibrar conjuntos de dimensionamento.

Conjuntos de dimensionamento equilibrados e desequilibrados

Um conjunto de dimensionamento será considerado equilibrado se cada zona tiver o mesmo número de VMs ±1 VM. O desvio de 1 permite dimensionar para qualquer número de instâncias, e não apenas um múltiplo do número de zonas que o conjunto de dimensionamento usa.

As VMs que atendem a qualquer um desses critérios ainda são consideradas ao determinar se um conjunto de escalonamento está equilibrado.

  • A VM foi criada com êxito, mas as extensões na VM não são implantadas.
  • A Máquina Virtual (VM) foi desalocada.

Confira alguns exemplos de como os Conjuntos de Dimensionamento de Máquinas Virtuais determinam o balanceamento de zona para um conjunto de dimensionamento com abrangência de zonas configurado para usar três zonas:

  • Exemplo 1: um conjunto de dimensionamento com 2 VMs na zona 1, 2 VMs na zona 2 e 2 VMs na zona 3 é considerado equilibrado. Cada zona tem exatamente o mesmo número de instâncias.

    Diagrama que mostra um conjunto de dimensionamento equilibrado, com duas instâncias em cada zona.

  • Exemplo 2: um conjunto de dimensionamento com 2 VMs na zona 1, 3 VMs na zona 2 e 3 VMs na zona 3 é considerado equilibrado. Há apenas uma zona com uma contagem de VMs diferente, e é apenas uma a menos que nas outras zonas.

    Diagrama que mostra um conjunto de dimensionamento equilibrado, com duas instâncias na zona 1 e três instâncias nas zonas 2 e 3.

  • Exemplo 3: um conjunto de dimensionamento com 1 VM na zona 1, 3 VMs na zona 2 e 3 VMs na zona 3 é considerado desequilibrado. A zona 1 tem duas VMs a menos que as zonas 2 e 3, o que excede o limite permitido de ±1 VM.

    Diagrama que mostra um conjunto de dimensionamento desequilibrado, com uma instância na zona 1 e três instâncias nas zonas 2 e 3.

  • Exemplo 4: um conjunto de dimensionamento com 2 VMs na zona 1, 2 VMs na zona 2 e 2 VMs na zona 3 é considerado equilibrado, mesmo que todas as extensões tenham falhado na zona 1, todas as extensões nas zonas 2 e 3 foram bem-sucedidas e as VMs da zona 3 foram desalocadas.

    Diagrama que mostra um conjunto de dimensionamento equilibrado mesmo que algumas instâncias tenham falhado e algumas sejam desalocadas.

Modos de balanceamento de zona

Para definir o modo de balanceamento de zona, o conjunto de dimensionamento deve usar várias zonas. Um conjunto de dimensionamento que não usa zonas ou usa apenas uma zona não requer balanceamento e, portanto, não tem um modo de balanceamento.

Para um conjunto de dimensionamento que usa várias zonas, você pode escolher entre dois modos de balanceamento de zona:

  • Balanceamento de zona de melhor esforço (modo padrão): O conjunto de dimensionamento visa manter o equilíbrio entre zonas durante operações de dimensionamento, mas não é garantido que ele permaneça equilibrado.

    Se uma zona não estiver disponível, o conjunto de dimensionamento tentará escalar horizontalmente para as zonas que ainda estão disponíveis e permitirá um desequilíbrio temporário. No entanto, esse desequilíbrio só é permitido quando uma única zona não está disponível. Depois que a zona estiver disponível, durante as operações subsequentes, o conjunto de dimensionamento tentará garantir o equilíbrio:

    • Ao realizar o ajuste para baixo, removendo VMs de zonas superprovisionadas
    • Ao escalar horizontalmente, adicionando VMs a zonas subprovisionadas

    Se duas ou mais zonas não estiverem disponíveis, o conjunto de dimensionamento não poderá continuar com operações de dimensionamento e quaisquer operações de dimensionamento serão bloqueadas.

  • Balanceamento rigoroso de zonas: O conjunto de escalas deve estar equilibrado em todos os momentos. Qualquer operação de dimensionamento que resultaria em um conjunto de dimensionamento desequilibrado será bloqueada, mesmo se uma ou mais zonas estiverem inoperantes.

Como equilibrar manualmente seu conjunto de escalas

Quando você adiciona zonas de disponibilidade a um conjunto de dimensionamento existente, as VMs existentes permanecem inalteradas e não são movidas ou redistribuídas. Além disso, adicionar uma zona não dispara uma operação de rebalanceamento. O balanceamento de zona só acontece durante operações de expansão quando novas instâncias são adicionadas ao conjunto de dimensionamento. O balanceamento de zona não substitui as instâncias existentes.

Você pode reequilibrar manualmente seus conjuntos de dimensionamento executando a seguinte sequência de operações:

  1. Escalar horizontalmente. Adicione mais instâncias atualizando a capacidade do conjunto de dimensionamento. A nova capacidade deve ser definida como a capacidade original mais o número de novas instâncias.

    O conjunto de dimensionamento tenta criar as novas instâncias nas zonas configuradas no conjunto de dimensionamento.

  2. Reduzir horizontalmente. Quando as novas instâncias estiverem prontas, ajuste o conjunto de dimensionamento para remover as instâncias antigas. Esse processo deixa o conjunto de dimensionamento em um estado equilibrado.

    Você pode excluir manualmente instâncias específicas ou dimensionar reduzindo a capacidade do conjunto de dimensionamento. Quando você dimensiona reduzindo a capacidade do conjunto de dimensionamento, a plataforma sempre prefere remover as instâncias fora da zona e, em seguida, segue a política de dimensionamento do conjunto de dimensionamento.

    Observação

    Se você usar o modo de orquestração flexível e anexar, desanexar ou remover VMs individuais, deverá verificar as zonas em que suas VMs estão. Se as VMs estiverem todas em uma única zona, seu conjunto de dimensionamento não será resiliente a uma interrupção nessa zona.

Confira alguns exemplos de como você pode reequilibrar manualmente conjuntos de dimensionamento em situações diferentes:

Suponha que você tenha um grupo de escalonamento não zonal com 5 instâncias:

Diagrama que mostra um conjunto de escalas com cinco instâncias não zonais.

Atualize-o para ser um conjunto de dimensionamento que abrange três zonas. Imediatamente depois de atualizar a configuração de zona do conjunto de dimensionamento, as instâncias existentes permanecem em um estado nonzonal.

  1. Escalar horizontalmente: Como seu conjunto de dimensionamento atualmente tem 5 instâncias nonzoais e você gostaria de escalar horizontalmente para que você tenha cinco instâncias distribuídas em 3 zonas, você deve definir a capacidade como 10 (5 + 5). As novas instâncias são criadas entre as zonas e as instâncias antigas permanecem onde estão:

    Diagrama que mostra um conjunto de dimensionamento com duas instâncias na zona 1, duas instâncias na zona 2, uma instância na zona 3 e cinco instâncias nonzoais.

  2. Diminuir: você reduz a capacidade para 5. O Azure remove as instâncias não zonais, deixando cinco instâncias distribuídas entre as zonas.

    Diagrama que mostra um conjunto de dimensionamento com duas instâncias na zona 1, duas instâncias na zona 2 e uma instância na zona 3.