Compartilhar via


Migrar implantações e recursos para Conjuntos de Dimensionamento de Máquinas Virtuais em orquestração flexível

Assim como os conjuntos de disponibilidade, os Conjuntos de Dimensionamento de Máquinas Virtuais permitem espalhar as máquinas virtuais por diversos domínios de falha. Os Conjuntos de Dimensionamento de Máquinas Virtuais com orquestração Flexível permitem combinar a escalabilidade dos Conjuntos de Dimensionamento de Máquinas Virtuais no modo de orquestração Uniforme com as garantias de disponibilidade regional dos conjuntos de disponibilidade. Este artigo apresenta as considerações de migração ao alternar os Conjuntos de Dimensionamento de Máquinas Virtuais para o modo de orquestração flexível.

Atualizar os modelos e os scripts das implantações de conjunto de disponibilidade

Primeiro, crie um Conjunto de Dimensionamento de Máquinas Virtuais sem perfil de dimensionamento automático por meio da CLI do Azure, do Azure PowerShell ou do modelo do ARM. O portal do Azure só permite a criação de um Conjunto de Dimensionamento de Máquinas Virtuais com um perfil de dimensionamento automático. Se você não quiser ou não precisar de um perfil de dimensionamento automático e preferir criar um conjunto de dimensionamento usando o portal do Azure, defina a capacidade inicial como 0.

É necessário especificar a contagem de domínios de falha para o Conjunto de Dimensionamento de Máquinas Virtuais. Para implantações regionais (não zonais), os Conjuntos de Dimensionamento de Máquinas Virtuais oferecem as mesmas garantias de domínio de falha que os conjuntos de disponibilidade. No entanto, é possível escalar verticalmente para até mil instâncias. Nas implantações zonais em que você esteja difundindo instâncias por diversas zonas de disponibilidade, a contagem de domínios de falha deverá ser definida como 1.

Os domínios de atualização foram preteridos no modo de orquestração flexível. A maioria das atualizações de plataforma com SKUs de uso geral é feita com a Migração ao Vivo e não requer reinicialização da instância. Quando uma manutenção de plataforma requer a reinicialização das instâncias, as atualizações são aplicadas um domínio de falha por vez.

A orquestração flexível para Conjuntos de Dimensionamento de Máquinas Virtuais também oferece suporte à implantação de instâncias em várias zonas de disponibilidade. Considere realizar a atualização para espalhar suas implantações de VM por diversas zonas de disponibilidade.

A última etapa neste processo é a criação de uma máquina virtual. Em vez de especificar um conjunto de disponibilidade, especifique o Conjunto de Dimensionamento de Máquinas Virtuais. Opcionalmente, especifique a zona de disponibilidade ou o domínio de falha em que você deseja colocar a VM.

Migrar as VMs existentes de um conjunto de disponibilidade

No momento, não há ferramentas automatizadas para mover diretamente as instâncias existentes em um Conjunto de Disponibilidade para um Conjunto de Dimensionamento de Máquinas Virtuais. No entanto, há diversas estratégias que podem ser usadas para migrar as instâncias existentes para um conjunto de dimensionamento flexível:

Migração azul/verde ou lado a lado

  1. Com uma configuração semelhante, coloque novas instâncias de máquinas virtuais do conjunto de dimensionamento no mesmo grupo de recursos, rede virtual, balanceador de carga etc. das VMs no conjunto de disponibilidade
  2. Migrar dados, tráfego de rede etc. para usar as novas instâncias do conjunto de dimensionamento
  3. Desaloque ou remova as máquinas virtuais do conjunto de disponibilidade original, deixando as VMs do conjunto de dimensionamento em execução para o aplicativo

Substituir as instâncias de VM

  1. Observe os parâmetros que você deseja manter da máquina virtual (nome, ID da NIC, IDs de disco de dados e sistema operacional, definições de configuração de VM, posicionamento de domínios de falha etc.)
  2. Exclua a máquina virtual do conjunto de disponibilidade. Os NICs e os discos da VM não serão excluídos
  3. Criar um novo objeto de máquina virtual usando os parâmetros da VM original
    • ID da NIC
    • Discos de dados e sistema operacional
    • Posicionamento de domínios de falha
    • Outras configurações de VM

Atualizar os scripts e os modelos de implantação dos conjuntos de dimensionamento uniformes

Atualize os scripts e os modelos de implantação dos Conjuntos de Dimensionamento de Máquinas Virtuais Uniformes para usar a orquestração Flexível. Altere os elementos a seguir em seus modelos para concluir o processo.

  • Remover LoadBalancerNATPool (inválido para flex)
  • Remover o parâmetro de superprovisionamento (inválido para flex)
  • Remover upgradePolicy (ainda é inválido para flex)
  • Atualizar a versão da API de computação para 2021-03-01
  • Adicionar o modo de orquestração flexible
  • platformFaultDomainCount obrigatório
  • singlePlacementGroup=false é necessário
  • Adicionar a versão da API de rede 2021-11-01 ou mais recente
  • Definir o IP configuration.properties.primary como verdadeiro (necessário para regras de saída)

Migrar os conjuntos de dimensionamento uniformes existentes

No momento, não há ferramentas automatizadas para mover diretamente as instâncias existentes ou atualizar um conjunto de dimensionamento Uniforme para um Conjunto de Dimensionamento de Máquinas Virtuais Flexível. No entanto, há uma estratégia que pode ser usada para migrar as instâncias existentes para um conjunto de dimensionamento Flexível:

Migração azul/verde ou lado a lado

  1. Com uma configuração semelhante, coloque um novo conjunto de dimensionamento com modo de orquestração flexível no mesmo grupo de recursos, rede virtual, balanceador de carga etc. do conjunto de dimensionamento original com modo de orquestração uniforme
  2. Migrar dados, tráfego de rede etc. para usar as novas instâncias do conjunto de dimensionamento
  3. Reduza verticalmente ou remova as máquinas virtuais do conjunto de dimensionamento uniforme original, deixando as máquinas virtuais do conjunto de dimensionamento em execução para o aplicativo

Considerações sobre os conjuntos de dimensionamento flexíveis

Os Conjuntos de Dimensionamento de Máquinas Virtuais com orquestração Flexível permitem combinar a escalabilidade dos Conjuntos de Dimensionamento de Máquinas Virtuais na orquestração Uniforme com as garantias de disponibilidade regional dos conjuntos de disponibilidade. Veja a seguir as principais considerações ao decidir trabalhar com o modo de orquestração flexível.

Criar conectividade de rede escalonável

O comportamento de acesso de saída de rede vai variar dependendo de como você escolhe criar máquinas virtuais no conjunto de dimensionamento. As instâncias de VM adicionadas de modo manual têm acesso de conectividade de saída padrão. Instâncias de VM criadas implicitamente não têm acesso padrão.

Para aprimorar a segurança de rede padrão, as instâncias de máquina virtual criadas implicitamente por meio do perfil de dimensionamento automático não têm acesso de saída padrão. Para usar Conjuntos de Dimensionamento de Máquinas Virtuais com instâncias de VM criadas implicitamente, o acesso de saída deve ser definido explicitamente por meio de um dos métodos a seguir:

  • Na maioria dos cenários, recomendamos o Gateway de NAT anexado à sub-rede.
  • Em cenários que apresentam altos requisitos de segurança ou ao usar Firewall do Azure ou NVA (Solução de Virtualização de Rede), você pode especificar uma Rota Definida pelo Usuário personalizada como o próximo salto por meio do firewall.
  • As instâncias estão no pool de back-end de um Azure Load Balancer de SKU Standard.
  • Anexe um Endereço IP Público ao adaptador de rede da instância.

Cenários comuns que exigem conectividade explícita de saída incluem:

  • A ativação da VM do Windows exigirá que você tenha definido a conectividade de saída da instância da VM para o KMS (Serviço de Gerenciamento de Chaves) de ativação do Windows. Para saber mais, confira Solucionar problemas de ativação de VM do Windows.
  • Acesso a contas de armazenamento ou Key Vault. Você também pode estabelecer a conectividade com os serviços do Azure por meio do Link Privado.
  • Atualizações do Windows.
  • Acesso aos gerenciadores de pacotes do Linux.

Para obter mais informações, consulte Acesso de saída padrão no Azure.

Com VMs de instância única em que você cria explicitamente a NIC, o acesso de saída padrão é fornecido. Os Conjuntos de Dimensionamento de Máquinas Virtuais no modo de Orquestração Uniforme também têm conectividade de saída padrão.

Importante

Verifique se você tem conectividade de rede de saída explícita. Saiba mais sobre isso em redes virtuais e máquinas virtuais no Azure e siga as melhores práticas de rede do Azure.

Atribuir o domínio de falha durante a criação da VM

Você pode escolher o número de domínios de falha para o conjunto de dimensionamento de orquestração flexível. Por padrão, ao adicionar uma VM a um conjunto de dimensionamento flexível, o Azure distribui uniformemente as instâncias entre os domínios de falha. Embora seja recomendado deixar o Azure atribuir o domínio de falha, para cenários avançados ou de solução de problemas, é possível substituir esse comportamento padrão e especificar o domínio de falha que receberá a instância.

az vm create –vmss "myVMSS"  –-platform_fault_domain 1

Nomenclatura de instâncias

Ao criar uma VM e adicioná-la a um conjunto de dimensionamento flexível, você tem controle total sobre os nomes de instância nas regras da convenção de nomenclatura do Azure. Quando as VMs são adicionadas automaticamente ao conjunto de dimensionamento por meio do dimensionamento automático, você fornece um prefixo e o Azure acrescenta um número exclusivo ao final do nome.

Listar alterações na API de VM dos conjuntos de dimensionamento

Os Conjuntos de Dimensionamento de Máquinas Virtuais permitem listar as instâncias que pertencem a eles. Com a orquestração flexível, o comando da VM que lista Conjuntos de Dimensionamento de Máquinas Virtuais fornece uma lista de IDs de VM desses conjuntos. Em seguida, chame os comandos GET da VM de Conjuntos de Dimensionamento de Máquinas Virtuais para obter mais detalhes sobre como o conjunto de dimensionamento está funcionando com a instância de VM. Para obter detalhes completos sobre a VM, use os comandos GET padrão da VM ou o Azure Resource Graph.

Instâncias de consulta para o estado de energia

O método preferencial é usar o Azure Resource Graph para consultar todas as VMs em um conjunto de dimensionamento de máquinas virtuais. O Azure Resource Graph fornece às assinaturas funcionalidades de consulta eficientes e em escala para os recursos do Azure.

| where type =~ 'Microsoft.Compute/virtualMachines'
| where properties.virtualMachineScaleSet contains "demo"
| extend powerState = properties.extended.instanceView.powerState.code
| project name, resourceGroup, location, powerState
| order by resourceGroup desc, name desc

Consultar recursos com o Azure Resource Graph é uma maneira conveniente e eficiente de consultar os recursos do Azure e minimizar as chamadas de API para o provedor de recursos. O Azure Resource Graph é um cache eventualmente consistente em que recursos novos ou atualizados podem não ser refletidos por até 60 segundos. Você pode:

  • Listar VMs em um grupo de recursos ou assinatura.
  • Usar a opção Expandir a fim de recuperar a exibição da instância (atribuição de domínio de falha, estados de energia e provisionamento) para todas as VMs em sua assinatura.
  • Usar a API de VM Get e os comandos a fim de obter a exibição da instância e do modelo de uma única instância.

Operações em lote de VMs dos conjuntos de dimensionamento

Use os comandos padrão da VM para iniciar, parar, reiniciar e excluir instâncias, em vez das APIs de VM do conjunto de dimensionamento de máquinas virtuais. As operações em Lote da VM do Conjunto de Dimensionamento de Máquinas Virtuais (iniciar tudo, parar tudo, refazer a imagem de tudo, etc.) não são usadas com o modo de orquestração Flexível.

Monitorar a integridade do aplicativo

O monitoramento de integridade de aplicativo permite que o Azure receba de seu aplicativo uma pulsação que o ajuda a determinar a integridade dele. As instâncias de VM que não estão íntegras são substituídas automaticamente pelo Azure. Para instâncias do conjunto de dimensionamento flexível, instale e configure a extensão de integridade do aplicativo na máquina virtual. Para instâncias do conjunto de dimensionamento uniforme, você pode usar a extensão de integridade do aplicativo ou medir a integridade com uma investigação de integridade personalizada do Azure Load Balancer.

Recuperar dados de diagnóstico de inicialização

Use os comandos e as APIs padrão da VM para recuperar capturas de tela e dados de diagnóstico de inicialização de instância. Os comandos e as APIs de diagnóstico de inicialização da VM dos Conjuntos de Dimensionamento de Máquinas Virtuais não são usados com instâncias no modo de orquestração Flexível.

Extensões de VM

Use extensões destinadas a máquinas virtuais padrão, em vez de a instâncias no modo de orquestração uniforme.

Proteger instâncias contra exclusão

No momento, os Conjuntos de Dimensionamento de Máquinas Virtuais no modo de orquestração Flexível não têm opções de proteção de instância. Se você tiver o dimensionamento automático habilitado em um Conjunto de Dimensionamento de Máquinas Virtuais, algumas VMs poderão correr o risco de serem excluídas durante o processo de dimensionamento. Se você quiser proteger determinadas instâncias de VM da exclusão, use o bloqueio do Azure Resource Manager.

Próximas etapas