Etapa 4: implantar seu aplicativo Hello World - AWS CodeDeploy

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Etapa 4: implantar seu aplicativo Hello World

Agora, você implanta o exemplo da revisão de aplicativo Hello World! que fez o upload no Amazon S3. Você usa o AWS CLI ou o CodeDeploy console para implantar a revisão e monitorar o progresso da implantação. Depois que a revisão do aplicativo for implementada com êxito, confira os resultados.

Implante a revisão do seu aplicativo com CodeDeploy

Você pode implantar seu aplicativo usando a CLI ou o console.

Para implantar sua revisão de aplicativo (CLI)

  1. Primeiro, a implantação precisa de um grupo de implantação. No entanto, antes de criar o grupo de implantação, você precisa de um ARN de um perfil de serviço. Um perfil de serviço é um perfil do IAM que dá a um serviço permissão para agir em seu nome. Nesse caso, a função de serviço dá CodeDeploy permissão para acessar suas instâncias do Amazon EC2 para expandir (ler) suas tags de instância do Amazon EC2.

    Você já deve ter seguido as instruções em Criar um perfil de serviço (CLI) para criar um perfil de serviço. Para obter o ARN do perfil de serviço, consulte Obter o ARN do perfil de serviço (CLI) .

  2. Agora que você tem o ARN de perfil de serviço, chame o comando create-deployment-group para criar um grupo de implantação chamado HelloWorld_DepGroup, associado ao aplicativo chamado HelloWorld_App, usando a tag de instância do Amazon EC2 chamada CodeDeployDemo e a configuração de implantação chamada CodeDeployDefault.OneAtATime, com o ARN de perfil de serviço:

    aws deploy create-deployment-group --application-name HelloWorld_App --deployment-group-name HelloWorld_DepGroup --deployment-config-name CodeDeployDefault.OneAtATime --ec2-tag-filters Key=Name,Value=CodeDeployDemo,Type=KEY_AND_VALUE --service-role-arn serviceRoleARN
    nota

    O create-deployment-groupcomando fornece suporte para a criação de acionadores que resultam no envio de notificações do Amazon SNS aos assinantes do tópico sobre eventos específicos em implantações e instâncias. O comando também oferece suporte a opções para reverter automaticamente as implantações e configurar alarmes para interromper as implantações quando os limites de monitoramento nos alarmes da CloudWatch Amazon forem atingidos. Os comandos para essas ações não estão incluídos neste tutorial.

  3. Antes de criar uma implantação, as instâncias do seu grupo de implantação devem ter o CodeDeploy agente instalado. Você pode instalar o agente a partir da linha de comando do AWS Systems Manager , com o seguinte comando:

    aws ssm create-association --name AWS-ConfigureAWSPackage --targets Key=tag:Name,Values=CodeDeployDemo --parameters action=Install,name=AWSCodeDeployAgent --schedule-expression "cron(0 2 ? * SUN *)"

    Esse comando cria uma associação no Systems Manager State Manager que instalará o CodeDeploy agente e tentará atualizá-lo às 2:00 de cada manhã de domingo. Para obter mais informações sobre o CodeDeploy agente, consulte Trabalhando com o CodeDeploy agente. Para obter mais informações sobre o Systems Manager, consulte O que é o AWS Systems Manager.

  4. Agora, chame o comando create-deployment para criar uma implantação associada ao aplicativo HelloWorld_App, a configuração de implantação CodeDeployDefault.OneAtATime e o grupo de implantação HelloWorld_DepGroup, usando a revisão de aplicativo HelloWorld_App.zip no bucket DOC-EXAMPLE-BUCKET:

    aws deploy create-deployment --application-name HelloWorld_App --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name HelloWorld_DepGroup --s3-location bucket=DOC-EXAMPLE-BUCKET,bundleType=zip,key=HelloWorld_App.zip

Para implantar sua revisão de aplicativo (console)

  1. Antes de usar o CodeDeploy console para implantar a revisão do aplicativo, você precisa de um ARN de função de serviço. Um perfil de serviço é um perfil do IAM que dá a um serviço permissão para agir em seu nome. Nesse caso, a função de serviço dá CodeDeploy permissão para acessar suas instâncias do Amazon EC2 para expandir (ler) suas tags de instância do Amazon EC2.

    Você já deve ter seguido as instruções em Criar um perfil de serviço (console) para criar um perfil de serviço. Para obter o ARN do perfil de serviço, consulte Obter o ARN do perfil de serviço (console) .

  2. Agora que você tem o ARN, você pode usar o CodeDeploy console para implantar a revisão do seu aplicativo.

    Faça login no AWS Management Console e abra o CodeDeploy console em https://console.aws.amazon.com/codedeploy.

    nota

    Faça login com o mesmo usuário que você configurou em Começando com CodeDeploy.

  3. No painel de navegação, expanda a opção Implantar e escolha Aplicações.

  4. Escolha HelloWorld_App.

  5. Na guia Grupos de implantação, selecione Criar um grupo de implantação.

  6. Em Nome do grupo de implantação, insira HelloWorld_DepGroup.

  7. Em Service Role (Função do serviço), selecione o nome da função do serviço.

  8. Em Tipo de implantação, selecione No local.

  9. Em Configuração do ambiente, selecione Instâncias do Amazon EC2.

  10. Em Configuração do agente com AWS Systems Manager, mantenha os padrões.

  11. Em Chave, insira Name.

  12. Em Valor, informe CodeDeployDemo.

  13. Em Configuração de implantação, escolha CodeDeployDefault. OneAtUma hora.

  14. Em Balanceador de carga, desmarque Habilitar balanceamento de carga.

  15. Selecione Criar grupo de implantação.

  16. Escolha Criar implantação.

  17. No grupo de implantação, escolha HelloWorld_ DepGroup

  18. Em Tipo de revisão, selecione Meu aplicativo está armazenado no Amazon S3 e, em seguida, em Local de revisão, digite o local da revisão do aplicativo de exemplo Hello World! que você fez upload no Amazon S3 anteriormente. Para obter a localização:

    1. Abra o console do Amazon S3 em https://console.aws.amazon.com/s3/.

    2. Na lista de buckets, escolha DOC-EXAMPLE-BUCKET (ou o nome do bucket em que você fez o upload da revisão do aplicativo).

    3. Na lista de objetos, escolha HelloWorld_App.zip.

    4. Na guia Overview (Visão geral), selecione Copy path (Copiar caminho).

    5. Retorne ao CodeDeploy console e, em Local da revisão, cole o valor do campo Link.

  19. Em Tipo de arquivo de revisão, selecione .zip.

  20. (Opcional) Insira um comentário em Deployment description (Descrição da implantação).

  21. Escolha Criar implantação. As informações sobre a implantação recém-criada aparecem na página Implantações.

Monitorar sua implantação e solucionar problemas relacionados

Use o console AWS CLI ou o console para monitorar e solucionar problemas de sua implantação.

Para monitorar e solucionar problemas de implantação (CLI)

  1. Obtenha o ID de implantação chamando o comando list-deployments para o aplicativo chamado HelloWorld_App e o grupo de implantação chamado HelloWorld_DepGroup:

    aws deploy list-deployments --application-name HelloWorld_App --deployment-group-name HelloWorld_DepGroup --query "deployments" --output text
  2. Chame o comando get-deployment com o ID da implantação:

    aws deploy get-deployment --deployment-id deploymentID --query "deploymentInfo.status" --output text
  3. O comando retorna o status geral da implantação. Se a implantação for bem-sucedida, o valor será Succeeded.

    Se o status geral forFailed, você poderá chamar comandos como list-deployment-instancese get-deployment-instancepara solucionar problemas. Para mais opções de solução de problemas, consulte Analisando arquivos de log para investigar falhas de implantação em instâncias.

Para monitorar e solucionar problemas de implantação (console)

Na página Implantações no CodeDeploy console, você pode monitorar o status da sua implantação na coluna Status.

Para obter mais informações sobre a implantação, especialmente se o valor da coluna Status tiver qualquer outro valor que não Succeeded:

  1. Na tabela Deployments (Implantações), selecione o ID da implantação. Depois que uma implantação apresentar falha, uma mensagem descrevendo o motivo da falha será exibida na página de detalhes da implantação.

  2. Serão exibidas mais informações sobre as instâncias de implantação. Depois que uma implantação apresentar falha, você possivelmente conseguirá determinar em quais instâncias do Amazon EC2 e em qual etapa ocorreu a falha.

  3. Se quiser realizar outros procedimentos de solução de problemas, use uma técnica como View Instance Details. Você também pode analisar os arquivos de log de implantação em uma instância do Amazon EC2. Para ter mais informações, consulte Analisando arquivos de log para investigar falhas de implantação em instâncias.

Verificar sua implantação

Depois que a sua implantação for bem-sucedida, verifique se a sua instalação está funcionando. Use o endereço DNS público da instância do Amazon EC2 para visualizar a página da Web em um navegador da Web. (Para obter o valor DNS público, no console do Amazon EC2, escolha a instância do Amazon EC2 e, na guia Description, procure o valor de DNS público.)

Por exemplo, se o endereço DNS público da sua instância do Amazon EC2 for ec2-01-234-567-890.compute-1.amazonaws.com, você usará o seguinte URL:

http://ec2-01-234-567-890.compute-1.amazonaws.com

Se o procedimento for bem-sucedido, você verá uma página da web Hello World!.