Exercício - configurar uma implantação azul-verde
Nesta demonstração, você investigará a implantação azul-verde.
Passos
Vamos agora ver como um pipeline de liberação pode ser usado para implementar implantações azul-verde.
Começaremos criando um novo projeto com um pipeline de lançamento que pode implantar o modelo Parts Unlimited novamente.
Uma implantação inicial do aplicativo
Navegue até o Gerador de Demonstração do Azure DevOps em um navegador: https://azuredevopsdemogenerator.azurewebsites.net e clique em Entrar.
Ser-lhe-á pedido para iniciar sessão, se necessário.
Na janela Criar novo projeto, selecione sua organização existente, defina o nome do projeto como PU hospedado e clique em Escolher modelo.
Clique no projeto PartsUnlimited (não no projeto PartsUnlimited-YAML), clique em Selecionar modelo e clique em Criar projeto. Quando a implantação for concluída, clique em Navegar até o projeto.
No menu principal do PU Hosted, clique em Pipelines, clique em Compilações, depois em Fila e, finalmente, em Executar para iniciar uma compilação.
A construção deve ter sucesso.
Nota
Avisos podem aparecer, mas podem ser ignorados para este passo a passo.
No menu principal, clique em Liberações. Como um gatilho de integração contínua estava em vigor, uma liberação foi tentada. No entanto, ainda não configuramos a versão, então ela terá falhado. Clique em Editar para entrar no modo de edição da versão.
Selecione o estágio Desenvolvimento na lista suspensa ao lado de Tarefas e clique para selecionar a tarefa Implantação do Azure.
No painel de implantação do grupo de recursos do Azure, selecione sua assinatura do Azure e clique em Autorizar quando solicitado. Quando a autorização for concluída, escolha um Local para o aplicativo Web.
Nota
Você pode ser solicitado a entrar no Azure neste momento.
Clique em Implantar o Serviço de Aplicativo do Azure na lista de tarefas para abrir suas configurações. Novamente, selecione sua assinatura do Azure. Defina o slot de implantação como Preparo.
Nota
O modelo cria um site de produção e dois slots de implantação: Dev e Staging. Usaremos o Estadiamento para o nosso site Verde.
Na lista de tarefas, clique em Desenvolvedor e, no painel de trabalho Agente, selecione Pipelines do Azure para o pool de Agentes e janelas mais recentes para a Especificação do Agente.
No menu superior, clique em Pipelines. Clique no estágio Desenvolvimento e, na janela de propriedades, renomeie-o para Site Verde. Clique no estágio de controle de qualidade e clique em Excluir e confirmar. Clique no estágio Produção e clique em Excluir e Confirmar. Clique em Guardar e, em seguida, em OK.
Passe o cursor sobre o estágio Site Verde e clique no ícone Clonar quando ele aparecer. Altere o nome do palco para Produção. Na lista suspensa Tarefas, selecione Produção.
Clique na tarefa Implantar do Serviço de Aplicativo do Azure e desmarque a opção Implantar no slot. Clique em Salvar e OK.
O local de produção não é implantado em um slot de implantação. Ele é implantado no site principal.
Clique em Criar versão e, em seguida, em Criar para criar a nova versão. Quando criado, clique no link de liberação para exibir seu status.
Depois de um tempo, a implantação deve ser bem-sucedida.
Testar o local verde e o local de produção
Abra a folha para o grupo de recursos ASPDOTNET criado pela implantação do projeto no portal do Azure. Observe os nomes dos aplicativos Web que foram implantados. Clique para abrir a folha do aplicativo Web Preparo*. Copie o URL do lado superior esquerdo.
Abra uma nova guia do navegador e navegue até o URL copiado. O aplicativo levará um pouco de tempo para compilar, mas então o site Verde (no slot de preparo) deve aparecer.
Nota
Você pode saber que o slot de preparo está sendo usado devido ao sufixo -staging no URL do site.
Abra outra nova guia do navegador e navegue até o mesmo URL, mas sem o slot -staging . O local de produção também deve estar funcionando.
Nota
Deixe ambas as janelas do navegador abertas para mais tarde no passo a passo.
Configurar a troca e a aprovação azul-verde
Agora que ambos os sites estão funcionando, vamos configurar o pipeline de liberação para implantação azul-verde.
No Azure DevOps, no menu principal do projeto PU Hosted, clique em Pipelines, clique em Releases e clique em Edit para retornar ao modo de edição.
Clique no estágio de produção , clique em Excluir e em Confirmar para removê-lo. Clique em +Adicionar para adicionar um estágio extra e clique em Trabalho vazio para o modelo. Defina Trocar Azul-Verde pelo Nome do palco.
Clique em Variáveis e modifique o escopo de WebsiteName para liberar.
Na lista suspensa Tarefas , clique para selecionar o estágio Trocar Azul-Verde . Clique no + lado direito de Trabalho do agente para adicionar uma nova tarefa. Na caixa Pesquisar, digite CLI.
Passe o cursor sobre o modelo da CLI do Azure e, quando o botão Adicionar aparecer, clique nele e clique para selecionar a tarefa da CLI do Azure para abrir seu painel de configurações.
Configure o painel da seguinte forma, com sua assinatura, um Local de Script do script Inline e o Script Inline:
Az webapp deployment slot swap -g $(ResourceGroupName) -n $(WebsiteName) --slot Staging --target-slot production
No menu acima da lista de tarefas, clique em Pipeline. Clique no ícone Condições de pré-implantação para o estágio Trocar azul-verde e, em seguida, no painel Disparadores, habilite Aprovações de pré-implantação.
Configure-se como aprovador, clique em Salvar e em OK.
Teste a troca azul-verde
No menu principal do PU Hosted, clique em Repositórios e, em seguida, clique em Arquivos para abrir os arquivos do projeto. Navegue até o arquivo a seguir.
Faremos uma alteração cosmética para ver se o site foi atualizado. Mudaremos a palavra pneus na rotação da página principal para pneus para atingir um público internacional.
Clique em Editar para permitir a edição e, em seguida, localize a palavra pneus e substitua-a pela palavra pneus. Clique em Confirmar e Confirmar para salvar as alterações e acionar uma compilação e liberação.
No menu principal, clique em Pipelines e, em seguida, em Compilações. Aguarde até que a compilação de integração contínua seja concluída com êxito.
No menu principal, clique em Liberações. Clique para abrir a versão mais recente (no topo da lista).
Agora você está sendo solicitado a aprovar a troca de implantação para Produção. Primeiro, verificaremos a implantação verde.
Atualize a guia do navegador Site verde (ou seja, Slot de preparo) e veja se a alteração apareceu. Agora mostra a palavra alterada.
Atualize a guia Navegador do site de produção e observe que ela ainda não está atualizada.
Como você está satisfeito com a alteração, em detalhes da versão, clique em Aprovar, depois em Aprovar e aguarde a conclusão do estágio.
Atualize a guia Navegador do site de produção e verifique se ele agora tem o código atualizado.
Notas finais
Se você verificar o site verde, verá que ele tem a versão anterior do código.
É a diferença crítica com o Swap, em vez de apenas um processo de implantação típico de um site em estágios para outro. Você tem uma opção de fallback rápido trocando os sites de volta, se necessário.
Precisa de ajuda? Veja o nosso guia de resolução de problemas ou faça comentários específicos ao comunicar um problema.