Início Rápido: criar um Conjunto de Dimensionamento de Máquinas Virtuais com a CLI do Azure
Aplica-se a: ✔️ VMs do Linux ✔️ VMs do Windows ✔️ Conjuntos de dimensionamento uniformes
Observação
O artigo a seguir faz referência a Conjuntos de Dimensionamento de Máquinas Virtuais uniformes. Recomendamos usar Conjuntos de Dimensionamento de Máquinas Virtuais flexíveis para cargas de trabalho novas. Saiba mais sobre esse novo modo de orquestração em nossa Visão geral dos Conjuntos de Dimensionamento de Máquinas Virtuais flexíveis.
Um conjunto de dimensionamento de máquinas virtuais permite implantar e gerenciar um conjunto de máquinas virtuais de dimensionamento automático. É possível dimensionar o número de VMs manualmente no conjunto de dimensionamento ou definir as regras para o dimensionamento automático com base no uso de recursos, como CPU, demanda de memória ou tráfego de rede. Um balanceador de carga do Azure então distribui o tráfego para as instâncias de VM no conjunto de dimensionamento. Neste guia de início rápido, você cria um Conjunto de Dimensionamento de Máquinas Virtuais e implanta um aplicativo de exemplo com a CLI do Azure.
Caso você não tenha uma assinatura do Azure, crie uma conta gratuita do Azure antes de começar.
Pré-requisitos
Use o ambiente Bash no Azure Cloud Shell. Para obter mais informações, confira Início Rápido para Bash no Azure Cloud Shell.
Se preferir executar os comandos de referência da CLI localmente, instale a CLI do Azure. Para execuções no Windows ou no macOS, considere executar a CLI do Azure em um contêiner do Docker. Para obter mais informações, confira Como executar a CLI do Azure em um contêiner do Docker.
Se estiver usando uma instalação local, entre com a CLI do Azure usando o comando az login. Para concluir o processo de autenticação, siga as etapas exibidas no terminal. Para ver outras opções de entrada, confira Conectar-se com a CLI do Azure.
Quando solicitado, instale a extensão da CLI do Azure no primeiro uso. Para obter mais informações sobre extensões, confira Usar extensões com a CLI do Azure.
Execute az version para localizar a versão e as bibliotecas dependentes que estão instaladas. Para fazer a atualização para a versão mais recente, execute az upgrade.
- Este artigo exige a versão 2.0.29 ou posterior da CLI do Azure. Se você está usando o Azure Cloud Shell, a versão mais recente já está instalada.
Criar um conjunto de escala
Importante
A partir de novembro de 2023, os conjuntos de dimensionamento de VM criados usando o PowerShell e a CLI do Azure serão padrão para o Modo de Orquestração Flexível se nenhum modo de orquestração for especificado. Para obter mais informações sobre essa alteração e quais ações você deve executar, acesse Alteração Interruptiva para Clientes PowerShell/CLI de VMSS – Hub de Comunidade da Microsoft
Antes de criar uma máquina virtual, crie um grupo de recursos com o az group create. O exemplo a seguir cria um grupo de recursos chamado myResourceGroup na localização eastus:
az group create --name myResourceGroup --location eastus
Crie um Conjunto de Dimensionamento de Máquinas Virtuais com az vmss create. O exemplo a seguir cria um conjunto de dimensionamento chamado myScaleSet que está definido para atualizar automaticamente à medida que alterações são aplicadas e gera chaves SSH caso elas não existam em ~/.ssh/id_rsa. Essas chaves SSH são usadas se você precisar fazer logon nas instâncias de VM. Para usar um conjunto existente de chaves SSH, em vez disso, use o parâmetro --ssh-key-value
e especifique o local de suas chaves.
az vmss create \
--resource-group myResourceGroup \
--name myScaleSet \
--image <SKU image> \
--upgrade-policy-mode automatic \
--admin-username azureuser \
--generate-ssh-keys
Leva alguns minutos para criar e configurar todos os recursos e as VMs do conjunto de dimensionamento.
Implantar um aplicativo de exemplo
Para testar seu conjunto de dimensionamento, instale um aplicativo Web básico. A Extensão de Script Personalizado do Azure para baixar e executar um script que instala um aplicativo nas instâncias de VM. Essa extensão é útil para a configuração de implantação de postagem, instalação de software ou qualquer outra configuração/tarefa de gerenciamento. Para obter mais informações, consulte a Visão geral da Extensão de Script Personalizado.
Use a Extensão de Script Personalizado para instalar um servidor Web NGINX básico. Aplique a Extensão do Script Personalizado que instala o NGINX com az vmss extension set da seguinte maneira:
az vmss extension set \
--publisher Microsoft.Azure.Extensions \
--version 2.0 \
--name CustomScript \
--resource-group myResourceGroup \
--vmss-name myScaleSet \
--settings '{"fileUris":["https://raw.githubusercontent.com/Azure-Samples/compute-automation-configurations/master/automate_nginx.sh"],"commandToExecute":"./automate_nginx.sh"}'
Permitir o tráfego para o aplicativo
Quando o conjunto de dimensionamento foi criado, um balanceador de carga do Azure foi automaticamente implantado. Um balanceador de carga distribui o tráfego para as instâncias de VM no conjunto de dimensionamento. Para permitir que o tráfego alcance o aplicativo Web de exemplo, crie uma regra de balanceador de carga com az network lb rule create. O exemplo a seguir cria uma regra chamada myLoadBalancerRuleWeb:
az network lb rule create \
--resource-group myResourceGroup \
--name myLoadBalancerRuleWeb \
--lb-name myScaleSetLB \
--backend-pool-name myScaleSetLBBEPool \
--backend-port 80 \
--frontend-ip-name loadBalancerFrontEnd \
--frontend-port 80 \
--protocol tcp
Testar seu conjunto de dimensionamento
Para ver seu conjunto de dimensionamento em ação, acesse o aplicativo Web de exemplo em um navegador da Web. Obtenha o endereço IP público de seu balanceador de carga com az network public-ip show. O seguinte exemplo obtém o endereço IP de myScaleSetLBPublicIP, criado como parte do conjunto de dimensionamento:
az network public-ip show \
--resource-group myResourceGroup \
--name myScaleSetLBPublicIP \
--query '[ipAddress]' \
--output tsv
Insira o endereço IP público do balanceador de carga em um navegador da Web. O balanceador de carga distribui o tráfego para uma de suas instâncias de VM, conforme mostrado no exemplo a seguir:
Limpar os recursos
Quando não for mais necessário, use az group delete para remover o grupo de recursos, o conjunto de dimensionamento e todos os recursos relacionados, como demonstrado a seguir. O parâmetro --no-wait
retorna o controle ao prompt sem aguardar a conclusão da operação. O parâmetro --yes
confirma que você deseja excluir os recursos sem um prompt adicional para fazer isso.
az group delete --name myResourceGroup --yes --no-wait
Próximas etapas
Neste início rápido, você criou um conjunto de dimensionamento básico e usou uma Extensão de Script Personalizado para instalar um servidor Web NGINX básico nas instâncias de VM. Para saber mais, siga para o tutorial sobre como criar e gerenciar um Conjuntos de Dimensionamento de Máquinas Virtuais do Azure.