Exercício - Atualizar aplicativos em conjuntos de dimensionamento de máquina virtual
No cenário da empresa de remessa, você instalou um aplicativo Web criando o Conjunto de Dimensionamento de Máquina Virtual. Agora você precisa atualizar o aplicativo Web e instalar uma nova versão em todas as máquinas virtuais (VMs) no conjunto de escala.
Você deve garantir que o sistema permaneça disponível durante a implantação. Uma boa forma de garantir a disponibilidade é utilizar uma extensão de script personalizado para fazer a atualização. Aplique esse script no Conjunto de Dimensionamento de Máquina Virtual. O conjunto de dimensionamento aplica a atualização a uma VM de cada vez, deixando as outras VMs em execução.
Neste exercício, você usa uma extensão de script personalizada para implantar uma nova versão do aplicativo Web. Edite a mensagem que o servidor nginx fornece. Pode utilizar a mesma abordagem para atualizações maiores.
Nota
Este exercício é opcional. Se não tiver uma conta do Azure, pode ler as instruções para saber como utilizar a API REST para obter métricas.
Se quiser concluir este exercício, mas não tiver uma subscrição do Azure ou preferir não utilizar a sua própria conta, crie uma conta gratuita antes de começar.
Implementar a atualização através de uma extensão de script personalizado
No portal do Azure, abra o Cloud Shell e execute o seguinte comando para exibir a política de atualização atual para o conjunto de escala:
az vmss show \ --name webServerScaleSet \ --resource-group myResourceGroup \ --query upgradePolicy.mode
Certifique-se de que a política de atualizações está definida para
Automatic
. Especificou esta política quando criou o conjunto de dimensionamento no primeiro laboratório. Se a política fosseManual
, você aplicaria todas as alterações de VM manualmente. Visto que a política éAutomatic
, pode utilizar a extensão de script personalizado e permitir que o conjunto de dimensionamento faça a atualização.Execute o seguinte comando para aplicar o script de atualização:
az vmss extension set \ --publisher Microsoft.Azure.Extensions \ --version 2.0 \ --name CustomScript \ --vmss-name webServerScaleSet \ --resource-group myResourceGroup \ --settings "{\"commandToExecute\": \"echo This is the updated app installed on the Virtual Machine Scale Set ! > /var/www/html/index.html\"}"
Testar a aplicação Web atualizada
Execute o seguinte comando para obter o endereço IP do balanceador de carga do conjunto de dimensionamento:
az network public-ip show \ --name webServerScaleSetLBPublicIP \ --resource-group myResourceGroup \ --output tsv \ --query ipAddress
No browser, aceda ao endereço público do balanceador de carga do conjunto de dimensionamento. Certifique-se de que vê a mensagem Esta é a aplicação atualizada instalada no Conjunto de Dimensionamento de Máquinas Virtuais.