

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á.

# Tutorial: Use CodeDeploy para implantar um aplicativo em um grupo do Auto Scaling
<a name="tutorials-auto-scaling-group"></a>

Neste tutorial, você usará CodeDeploy para implantar uma revisão do aplicativo em um grupo do Auto Scaling. O Amazon EC2 Auto Scaling lança instâncias do Amazon EC2 usando condições predefinidas e, em seguida, encerra essas instâncias quando elas não são mais necessárias. O Amazon EC2 Auto Scaling CodeDeploy pode ajudar a escalar garantindo que sempre tenha o número correto de instâncias do Amazon EC2 disponíveis para lidar com a carga das implantações. Para obter informações sobre a CodeDeploy integração do Amazon EC2 Auto Scaling com, consulte. [Integração CodeDeploy com o Amazon EC2 Auto Scaling](integrations-aws-auto-scaling.md)

**Topics**
+ [Pré-requisitos](tutorials-auto-scaling-group-prerequisites.md)
+ [Etapa 1: criar e configurar o grupo do Auto Scaling](tutorials-auto-scaling-group-create-auto-scaling-group.md)
+ [Etapa 2: implantar o aplicativo no grupo do Auto Scaling](tutorials-auto-scaling-group-create-deployment.md)
+ [Etapa 3: verificar os resultados](tutorials-auto-scaling-group-verify.md)
+ [Etapa 4: Aumentar o número de instâncias do Amazon EC2 no grupo do Auto Scaling.](tutorials-auto-scaling-group-scale-up.md)
+ [Etapa 5: verificar novamente os resultados](tutorials-auto-scaling-group-reverify.md)
+ [Etapa 6: limpar](tutorials-auto-scaling-group-clean-up.md)

# Pré-requisitos
<a name="tutorials-auto-scaling-group-prerequisites"></a>

Para acompanhar esse tutorial:
+ Conclua todas as etapas[Começando com CodeDeploy](getting-started-codedeploy.md), incluindo configurar AWS CLI e criar um perfil de instância do IAM (**CodeDeployDemo-EC2-Instance-Profile**) e uma função de serviço (**CodeDeployDemo**). Um *perfil de serviço* é um tipo especial de perfil do IAM; que dá a um serviço permissão para agir em seu nome.
+ Se criou grupo do Auto Scaling com um modelo de execução, você deverá adicionar as seguintes permissões:
  +  `ec2:RunInstances` 
  +  `ec2:CreateTags` 
  +  `iam:PassRole` 

  Para obter mais informações sobre como criar modelos de execução, consulte [Etapa 2: Criar um perfil de serviço](getting-started-create-service-role.md), [Criar um modelo de execução para um grupo do Auto Scaling](https://docs.aws.amazon.com/autoscaling/ec2/userguide/create-launch-template.html) e [Executar suporte de modelo](https://docs.aws.amazon.com/autoscaling/ec2/userguide/ec2-auto-scaling-launch-template-permissions.html) no *Guia do usuário do Amazon EC2 Auto Scaling*. 
+  Crie e use uma revisão compatível com uma instância do Ubuntu Server CodeDeploy e. Para a revisão, é possível fazer um dos seguintes procedimentos:
  + Crie e use a amostra de revisão [Etapa 2: criar uma revisão de aplicativo de amostra](tutorials-on-premises-instance-2-create-sample-revision.md) no tutorial [Tutorial: Implantar um aplicativo em uma instância local com CodeDeploy (Windows Server, Ubuntu Server ou Red Hat Enterprise Linux)](tutorials-on-premises-instance.md). 
  + Crie uma revisão por conta própria. Consulte [Trabalhando com revisões de aplicativos para CodeDeploy](application-revisions.md).
+ Crie um grupo de segurança chamado **CodeDeployDemo-AS-SG** com a seguinte **regra de entrada**:
  + Tipo: HTTP
  + Origem: Qualquer lugar

  Isso é necessário para visualizar seu aplicativo e verificar o sucesso da implantação. Para obter informações sobre como criar um grupo de segurança, consulte [Criar um grupo de segurança](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/working-with-security-groups.html#creating-security-group) no *Guia do usuário do Amazon EC2*.

 

# Etapa 1: criar e configurar o grupo do Auto Scaling
<a name="tutorials-auto-scaling-group-create-auto-scaling-group"></a>

Nesta etapa, você criará um grupo do Auto Scaling que contém uma única instância Amazon Linux, RHEL ou Windows Server Amazon EC2. Em uma etapa posterior, você instruirá o Amazon EC2 Auto Scaling a adicionar mais uma instância do Amazon EC2 CodeDeploy e implantará sua revisão nela.

**Topics**
+ [Como criar e configurar o grupo do Auto Scaling (CLI)](#tutorials-auto-scaling-group-create-auto-scaling-group-cli)
+ [Como criar e configurar o grupo do Auto Scaling (console)](#tutorials-auto-scaling-group-create-auto-scaling-group-console)

## Como criar e configurar o grupo do Auto Scaling (CLI)
<a name="tutorials-auto-scaling-group-create-auto-scaling-group-cli"></a>

1. Use o comando **create-launch-template** para criar um modelo de execução do Amazon EC2.

   Antes de chamar esse comando, você precisa do ID de uma AMI que funcione para este tutorial, representado pelo espaço *image-id* reservado. Você também precisa do nome de um par de chaves de instância do Amazon EC2 para permitir o acesso à instância do Amazon EC2, representado pelo espaço reservado. *key-name*

   Para obter o ID de uma AMI que funcione com este tutorial:

   1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

   1. No painel de navegação, em **Instâncias**, escolha **Instâncias** e, em seguida, escolha **Iniciar instância**.

   1. Na guia **Início rápido** da página **Escolha uma imagem de máquina da Amazon**, anote o ID da AMI ao lado do **Amazon Linux 2 AMI**, **Red Hat Enterprise Linux 7.1**, **Ubuntu Server 14.04 LTS** ou **Microsoft Windows Server 2012 R2**. 
**nota**  
Se você tiver uma versão personalizada de uma AMI compatível com o CodeDeploy, selecione-a aqui em vez de navegar pela guia **Quick Start (Início rápido)**. Para obter informações sobre o uso de uma AMI personalizada com CodeDeploy o Amazon EC2 Auto [Usando uma AMI personalizada com o CodeDeploy Amazon EC2 Auto Scaling](integrations-aws-auto-scaling.md#integrations-aws-auto-scaling-custom-ami) Scaling, consulte.

   Para o par de chaves da instância do Amazon EC2, use o nome do par de chaves da sua instância do Amazon EC2.

   Chame o comando **create-launch-template**.

   Em máquinas Linux, macOS ou Unix locais:

   ```
   aws ec2 create-launch-template \
     --launch-template-name CodeDeployDemo-AS-Launch-Template \
     --launch-template-data file://config.json
   ```

   Visualize o conteúdo do arquivo `config.json`:

   ```
   { 
     "InstanceType":"t1.micro",
     "ImageId":"image-id",
     "IamInstanceProfile":{
       "Name":"CodeDeployDemo-EC2-Instance-Profile"
     },
     "KeyName":"key-name"
   }
   ```

   Em máquinas locais do Windows:

   ```
   aws ec2 create-launch-template --launch-template-name CodeDeployDemo-AS-Launch-Template --launch-template-data file://config.json
   ```

   Visualize o conteúdo do arquivo `config.json`:

   ```
   { 
     "InstanceType":"t1.micro",
     "ImageId":"image-id",
     "IamInstanceProfile":{
       "Name":"CodeDeployDemo-EC2-Instance-Profile"
     },
     "KeyName":"key-name"
   }
   ```

   Esses comandos, junto com o `config.json` arquivo, criam um modelo de lançamento do Amazon EC2 com o nome do seu grupo CodeDeployDemo-AS-Launch-Template de Auto Scaling, que será criado na etapa seguinte com base no tipo de instância t1.micro do Amazon EC2. Com base em sua entrada para`ImageId`, `IamInstanceProfile`, e `KeyName`, o modelo de execução também especifica a ID da AMI, o nome do perfil de instância associado ao perfil do IAM a ser passado para as instâncias na execução e o par de chaves do Amazon EC2 a ser usado ao se conectar às instâncias.

1.  Chame o comando **create-auto-scaling-group** para criar um grupo do Auto Scaling. Você precisará do nome de uma das zonas de disponibilidade em uma das regiões listadas em [Região e dos endpoints](https://docs.aws.amazon.com/general/latest/gr/rande.html#codedeploy_region) na *Referência geral da AWS*, representados pelo espaço *availability-zone* reservado.
**nota**  
Para ver uma lista de Zonas de disponibilidade em uma região, chame:   

   ```
   aws ec2 describe-availability-zones --region region-name
   ```
Por exemplo, para ver uma lista de Zonas de disponibilidade na região Oeste dos EUA (Oregon), chame:  

   ```
   aws ec2 describe-availability-zones --region us-west-2
   ```
Para obter uma lista dos identificadores de nome da região, consulte [Nomes de bucket do kit de recursos por região](resource-kit.md#resource-kit-bucket-names).

   Em máquinas Linux, macOS ou Unix locais:

   ```
   aws autoscaling create-auto-scaling-group \
     --auto-scaling-group-name CodeDeployDemo-AS-Group \
     --launch-template CodeDeployDemo-AS-Launch-Template,Version='$Latest' \
     --min-size 1 \
     --max-size 1 \
     --desired-capacity 1 \
     --availability-zones availability-zone \
     --tags Key=Name,Value=CodeDeployDemo,PropagateAtLaunch=true
   ```

   Em máquinas locais do Windows:

   ```
   aws autoscaling create-auto-scaling-group --auto-scaling-group-name CodeDeployDemo-AS-Group --launch-template LaunchTemplateName=CodeDeployDemo-AS-Launch-Template,Version="$Latest" --min-size 1 --max-size 1 --desired-capacity 1 --availability-zones availability-zone --tags Key=Name,Value=CodeDeployDemo,PropagateAtLaunch=true
   ```

   Esses comandos criam um grupo do Auto Scaling chamado **CodeDeployDemo-AS-Group** com base no modelo de execução do Amazon EC2 chamado **CodeDeployDemo-AS-Launch-Template**. Esse grupo do Auto Scaling tem apenas uma instância do Amazon EC2 e é criado na Zona de disponibilidade especificada. Cada instância nesse grupo do Auto Scaling terá a tag `Name=CodeDeployDemo`. A tag será usada ao instalar o CodeDeploy agente posteriormente.

1. Chame o comando **describe-auto-scaling-groups** contra **CodeDeployDemo-AS-Group**:

   ```
   aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names CodeDeployDemo-AS-Group --query "AutoScalingGroups[0].Instances[*].[HealthStatus, LifecycleState]" --output text
   ```

   Não prossiga até que os valores retornados mostrem `Healthy` e `InService`.

1.  As instâncias em seu grupo de Auto Scaling devem ter o CodeDeploy agente instalado para serem usadas em CodeDeploy implantações. Instale o CodeDeploy agente chamando o **create-association** comando AWS Systems Manager com as tags que foram adicionadas quando o grupo Auto Scaling foi criado. 

   ```
   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 em todas as instâncias do grupo Auto Scaling e tentará atualizá-lo às 2h da manhã de domingo. Para obter mais informações sobre o CodeDeploy agente, consulte [Trabalhando com o CodeDeploy agente](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent.html). Para obter mais informações sobre o Systems Manager, consulte [O que é o AWS Systems Manager](https://docs.aws.amazon.com/systems-manager/latest/userguide/what-is-systems-manager.html).

## Como criar e configurar o grupo do Auto Scaling (console)
<a name="tutorials-auto-scaling-group-create-auto-scaling-group-console"></a>

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. Na barra de navegação global, certifique-se de que uma das regiões listadas em [Região e endpoints](https://docs.aws.amazon.com/general/latest/gr/rande.html#codedeploy_region) em *Referência geral da AWS* esteja selecionada. Os recursos do Amazon EC2 Auto Scaling estão vinculados à região que você especifica CodeDeploy e são suportados somente em regiões selecionadas.

1. Na barra de navegação, escolha **Instances** e, em seguida, **Launch Templates**.

1. Escolha **Criar modelo de execução**.

1. Na caixa de diálogo **Nome e descrição do modelo de execução**, para **Nome do modelo de execução**, insira **CodeDeployDemo-AS-Launch-Template**. Mantenha os valores padrão em todos os outros campos.

1. Na caixa de diálogo **Imagem de máquina da Amazon (AMI)**, clique no menu suspenso em **AMI** e escolha uma AMI que funcione com este tutorial:

   1. Na guia **Início rápido** do menu suspenso **AMI**, escolha uma das seguintes opções: **Amazon Linux 2 AMI**, **Red Hat Enterprise Linux 7.1**, **Ubuntu Server 14.04 LTS** ou **Microsoft Windows Server 2012 R2**. 
**nota**  
Se você tiver uma versão personalizada de uma AMI compatível com o CodeDeploy, selecione-a aqui em vez de navegar pela guia **Quick Start (Início rápido)**. Para obter informações sobre o uso de uma AMI personalizada com CodeDeploy o Amazon EC2 Auto [Usando uma AMI personalizada com o CodeDeploy Amazon EC2 Auto Scaling](integrations-aws-auto-scaling.md#integrations-aws-auto-scaling-custom-ami) Scaling, consulte.

1. Em **Tipo de instância**, selecione a lista suspensa e escolha **t1.micro**. É possível usar a barra de pesquisa para encontrá-la mais rapidamente.

1. Na caixa de diálogo **Par de chaves (login)**, selecione **Escolher um par de chaves existente**. Na lista suspensa **Selecione um par de chaves**, selecione o par de chaves de instância do Amazon EC2 criado ou usado nas etapas anteriores.

1. Na caixa de diálogo **Configurações de rede**, escolha **Virtual Public Cloud (VPC)**.

   No menu suspenso **Grupos de segurança**, escolha o grupo de segurança que você criou na seção de [pré-requisitos do tutorial](https://docs.aws.amazon.com/codedeploy/latest/userguide/tutorials-auto-scaling-group-prerequisites.html) (**CodeDeployDemo-AS-SG**).

1. Expanda a caixa de diálogo **Detalhes avançados**. No menu suspenso **Perfil de instância do IAM**, selecione o perfil do IAM que você criou anteriormente (**CodeDeployDemo-EC2-Instance-Profile**) em **Perfil de instância do IAM**.

   Deixe o restante dos padrões.

1. Escolha **Criar modelo de execução**.

1. Na caixa de diálogo **Próximas etapas**, escolha **Criar grupo do Auto Scaling.**

1. Na página **Escolher modelo ou configuração de execução**, para **Nome do grupo do Auto Scaling**, insira **CodeDeployDemo-AS-Group**.

1. Na caixa de diálogo **Modelo de execução**, seu modelo de execução (**CodeDeployDemo-AS-Launch-Template**) deve ser preenchido; caso contrário, selecione-o no menu suspenso. Deixe os padrões e escolha **Próximo**. 

1. Na página **Escolher as opções de execução da instância** na seção **Rede**, para **VPC**, selecione a VPC padrão. Em seguida, para **Zonas de disponibilidade e sub-redes**, escolha uma sub-rede padrão. Você deve criar uma VPC se não puder escolher a padrão. Para obter mais informações, consulte [Conceitos básicos do Amazon VPC](https://docs.aws.amazon.com/vpc/latest/userguide/vpc-getting-started.html).

1. Na seção **Instance type requirements** (Requisitos de tipo de instância), use a configuração padrão para simplificar essa etapa. (Não substitua o modelo de execução.) Neste tutorial, você fará o execução apenas das Instâncias sob demanda usando o tipo de instância especificado no modelo de execução.

1. Selecione **Next** (Próximo) para ir até a página **Configure advanced options** (Configurar opções avançadas).

1. Mantenha os outros valores padrão e escolha **Próximo**.

1. Na página **Configurar tamanho do grupo e políticas de escalabilidade**, mantenha os valores padrão de **tamanho do grupo** de 1. Escolha **Próximo**.

1. Ignore a etapa de configuração de notificações e escolha **Próximo**.

1. Na página **Adicionar tags**, adicione uma tag a ser usada ao instalar o CodeDeploy agente posteriormente. Escolha **Adicionar Tag**.

   1. Em **Chave**, insira **Name**.

   1. Em **Valor**, informe **CodeDeployDemo**.

   Escolha **Próximo**.

1. Na página **Revisar**, reveja as configurações do grupo do Auto Scaling e escolha **Criar grupo do Auto Scaling**.

1. Na barra de navegação, com a opção **Grupos do Auto Scaling** selecionada, escolha **CodeDeployDemo-AS-Group** e, em seguida, a guia **Gerenciamento de instâncias**. Não continue até que o valor de **InService**apareça na coluna **Lifecycle** e o valor de **Healthy** apareça na coluna **Health Status**.

1. Instale o CodeDeploy agente seguindo as etapas em [Instalar o CodeDeploy agente](https://docs.aws.amazon.com/codedeploy/latest/userguide/codedeploy-agent-operations-install.html) e usando as tags da `Name=CodeDeployDemo` instância.

# Etapa 2: implantar o aplicativo no grupo do Auto Scaling
<a name="tutorials-auto-scaling-group-create-deployment"></a>

Nesta etapa, você implantará a revisão na instância única do Amazon EC2 no grupo do Auto Scaling.

**Topics**
+ [Para criar a implantação (CLI)](#tutorials-auto-scaling-group-create-deployment-cli)
+ [Para criar a implantação (console)](#tutorials-auto-scaling-group-create-deployment-console)

## Para criar a implantação (CLI)
<a name="tutorials-auto-scaling-group-create-deployment-cli"></a>

1. Chame o comando **create-application** para criar um aplicativo chamado **SimpleDemoApp**:

   ```
   aws deploy create-application --application-name SimpleDemoApp
   ```

1. Você já deve ter criado um perfil de serviço seguindo as instruções em [Etapa 2: criar uma função de serviço para CodeDeploy](getting-started-create-service-role.md). A função de serviço dará CodeDeploy permissão para acessar suas instâncias do Amazon EC2 para expandir (ler) suas tags. Você precisará do ARN da função de serviço. Para obter o ARN do perfil de serviço, siga as instruções em [Obter o ARN do perfil de serviço (CLI)](getting-started-create-service-role.md#getting-started-get-service-role-cli).

1. Agora que você tem um ARN de perfil de serviço, chame o comando **create-deployment-group** para criar um grupo de implantação chamado **SimpleDemoDG**, associado ao aplicativo chamado **SimpleDemoApp**, usando o grupo do Auto Scaling chamado **CodeDeployDemo-AS-Group** e a configuração de implantação chamada **CodeDeployDefault.OneAtATime**, com o ARN de perfil de serviço especificado.
**nota**  
O [create-deployment-group](https://docs.aws.amazon.com/cli/latest/reference/deploy/create-deployment-group.html)comando 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.

   Em máquinas Linux, macOS ou Unix locais:

   ```
   aws deploy create-deployment-group \
     --application-name SimpleDemoApp \
     --auto-scaling-groups CodeDeployDemo-AS-Group \
     --deployment-group-name SimpleDemoDG \
     --deployment-config-name CodeDeployDefault.OneAtATime \
     --service-role-arn service-role-arn
   ```

   Em máquinas locais do Windows:

   ```
   aws deploy create-deployment-group --application-name SimpleDemoApp --auto-scaling-groups CodeDeployDemo-AS-Group --deployment-group-name SimpleDemoDG --deployment-config-name CodeDeployDefault.OneAtATime --service-role-arn service-role-arn
   ```

1. Chame o comando **create-deployment** para criar uma implantação associada ao aplicativo **SimpleDemoApp**, a configuração de implantação **CodeDeployDefault.OneAtATime**, o grupo de implantação **SimpleDemoDG**, usando a revisão na localização especificada.

   **Para instâncias Amazon Linux e RHEL do Amazon EC2, chamadas de máquinas Linux, macOS ou Unix locais**

    

   ```
   aws deploy create-deployment \
     --application-name SimpleDemoApp \
     --deployment-config-name CodeDeployDefault.OneAtATime \
     --deployment-group-name SimpleDemoDG \
     --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Linux.zip
   ```

   *bucket-name*é o nome do bucket do Amazon S3 que contém os arquivos do CodeDeploy Resource Kit para sua região. Por exemplo, para a região Leste dos EUA (Ohio), *bucket-name* substitua por`aws-codedeploy-us-east-2`. Para obter uma lista de nomes de buckets, consulte [Nomes de bucket do kit de recursos por região](resource-kit.md#resource-kit-bucket-names).

   **Para instâncias do Amazon Linux e RHEL do Amazon EC2, chamadas de máquinas Windows locais**

    

   ```
   aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Linux.zip
   ```

   *bucket-name*é o nome do bucket do Amazon S3 que contém os arquivos do CodeDeploy Resource Kit para sua região. Por exemplo, para a região Leste dos EUA (Ohio), *bucket-name* substitua por`aws-codedeploy-us-east-2`. Para obter uma lista de nomes de buckets, consulte [Nomes de bucket do kit de recursos por região](resource-kit.md#resource-kit-bucket-names).

   **Para instâncias do Windows Server Amazon EC2, chamadas de máquinas Linux, macOS ou Unix locais**

    

   ```
   aws deploy create-deployment \
     --application-name SimpleDemoApp \
     --deployment-config-name CodeDeployDefault.OneAtATime \
     --deployment-group-name SimpleDemoDG \
     --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Windows.zip
   ```

   *bucket-name*é o nome do bucket do Amazon S3 que contém os arquivos do CodeDeploy Resource Kit para sua região. Por exemplo, para a região Leste dos EUA (Ohio), *bucket-name* substitua por`aws-codedeploy-us-east-2`. Para obter uma lista de nomes de buckets, consulte [Nomes de bucket do kit de recursos por região](resource-kit.md#resource-kit-bucket-names).

   **Para instâncias do Windows Server Amazon EC2, chamadas de máquinas Windows locais**

   ```
   aws deploy create-deployment --application-name SimpleDemoApp --deployment-config-name CodeDeployDefault.OneAtATime --deployment-group-name SimpleDemoDG --s3-location bucket=bucket-name,bundleType=zip,key=samples/latest/SampleApp_Windows.zip
   ```

   *bucket-name*é o nome do bucket do Amazon S3 que contém os arquivos do CodeDeploy Resource Kit para sua região. Por exemplo, para a região Leste dos EUA (Ohio), *bucket-name* substitua por`aws-codedeploy-us-east-2`. Para obter uma lista de nomes de buckets, consulte [Nomes de bucket do kit de recursos por região](resource-kit.md#resource-kit-bucket-names).
**nota**  
Atualmente, CodeDeploy não fornece uma revisão de amostra para implantação em instâncias do Amazon EC2 do Ubuntu Server. Para criar uma revisão por conta própria, consulte [Trabalhando com revisões de aplicativos para CodeDeploy](application-revisions.md).

1. Chame o comando **get-deployment** para verificar se a implantação foi bem-sucedida.

   Antes de chamar esse comando, será necessário o ID de implantação, que deve ter sido retornado pela chamada para o comando **create-deployment**. Se precisar obter o ID de implantação novamente, chame o comando **list-deployments** contra o aplicativo chamado **SimpleDemoApp** e o grupo de implantação chamado **SimpleDemoDG**.

   ```
   aws deploy list-deployments --application-name SimpleDemoApp --deployment-group-name SimpleDemoDG --query "deployments" --output text
   ```

   Agora, chame o comando **get-deployment** usando o ID de implantação:

   ```
   aws deploy get-deployment --deployment-id deployment-id --query "deploymentInfo.status" --output text
   ```

   Não continue até que o valor retornado seja `Succeeded`.

## Para criar a implantação (console)
<a name="tutorials-auto-scaling-group-create-deployment-console"></a>

1. Você já deve ter criado um perfil de serviço seguindo as instruções em [Etapa 2: criar uma função de serviço para CodeDeploy](getting-started-create-service-role.md). A função de serviço dará CodeDeploy permissão para acessar suas instâncias para expandir (ler) suas tags. Antes de usar o CodeDeploy console para implantar a revisão do aplicativo, você precisará do ARN da função de serviço. Para obter o ARN do perfil de serviço, siga as instruções em [Obter o ARN do perfil de serviço (console)](getting-started-create-service-role.md#getting-started-get-service-role-console). 

1. Agora que você tem o ARN da função de serviço, você pode usar o CodeDeploy console para implantar a revisão do seu aplicativo.

   Faça login no Console de gerenciamento da AWS e abra o CodeDeploy console em [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy).
**nota**  
Faça login com o mesmo usuário que você configurou em [Começando com CodeDeploy](getting-started-codedeploy.md).

1. No painel de navegação, expanda a opção **Implantar** e escolha **Aplicativos**.

1. Escolha **Criar aplicativo**.

1. Selecione **Custom application (Aplicativo personalizado)**.

1. Em **Nome do aplicativo**, insira **SimpleDemoApp**.

1. Em **Plataforma de computação**, selecione **EC2/On-Premises**.

1. Escolha **Criar aplicativo**.

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

1. Em **Nome do grupo de implantação**, insira **SimpleDemoDG**.

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

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

1. Em **Configuração do ambiente**, selecione **Grupos do Auto Scaling** e escolha **CodeDeployDemo-AS-Group**.

1. Em **Configuração de implantação**, escolha **CodeDeployDefault. OneAtATime**.

1. Desmarque **Enable load balancing (Habilitar o balanceamento de carga)**.

1. Selecione **Criar grupo de implantação**. 

1. Na página do grupo de implantação, selecione **Create deployment (Criar implantação)**.

1. Em **Tipo de revisão**, escolha **Meu aplicativo está armazenado no Amazon S3**. 

1. Em **Revision location (Local da revisão)**, insira o local do aplicativo de exemplo para o sistema operacional e região.

   **Para instâncias Amazon Linux e RHEL do Amazon EC2**  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/codedeploy/latest/userguide/tutorials-auto-scaling-group-create-deployment.html)

   **Para instâncias do Windows Server Amazon EC2**  
****    
[\[See the AWS documentation website for more details\]](http://docs.aws.amazon.com/pt_br/codedeploy/latest/userguide/tutorials-auto-scaling-group-create-deployment.html)

    **Para instâncias do Ubuntu Server Amazon EC2**

   Digite o local da sua revisão de aplicativo personalizada armazenada no Amazon S3.

1. Deixe **Descrição da implantação** em branco.

1. Expanda **Advanced**.

1. Escolha **Criar implantação**. 
**nota**  
Se **Falha** aparecer no lugar de **Bem-sucedido**, convém tentar algumas das técnicas em [Monitorar sua implantação e solucionar problemas relacionados](tutorials-wordpress-deploy-application.md#tutorials-wordpress-deploy-application-monitor) (usando o nome de aplicativo **SimpleDemoApp** e o nome do grupo de implantação **SimpleDemoDG**).

# Etapa 3: verificar os resultados
<a name="tutorials-auto-scaling-group-verify"></a>

Nesta etapa, você verificará se CodeDeploy instalou a **SimpleDemoApp** revisão em uma única instância do Amazon EC2 no grupo Auto Scaling.

**Topics**
+ [Para verificar os resultados (CLI)](#tutorials-auto-scaling-group-verify-cli)
+ [Para verificar os resultados (console)](#tutorials-auto-scaling-group-verify-console)

## Para verificar os resultados (CLI)
<a name="tutorials-auto-scaling-group-verify-cli"></a>

Primeiro, você precisará do DNS público da instância do Amazon EC2.

Use o AWS CLI para obter o DNS público da instância do Amazon EC2 no grupo Auto Scaling chamando o comando. **describe-instances** 

Antes de chamar esse comando, você precisará da ID da instância do Amazon EC2. Para obter o ID, chame **describe-auto-scaling-groups** contra **CodeDeployDemo-AS-Group**, conforme feito anteriormente:

```
aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names CodeDeployDemo-AS-Group --query "AutoScalingGroups[0].Instances[*].InstanceId" --output text
```

Agora chame o comando **describe-instances**:

```
aws ec2 describe-instances --instance-id instance-id --query "Reservations[0].Instances[0].PublicDnsName" --output text
```

O valor retornado é o DNS público da instância do Amazon EC2.

Usando um navegador da web, mostre a SimpleDemoApp revisão implantada nessa instância do Amazon EC2, usando uma URL como a seguinte:

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

Se você ver a página de parabéns, você usou com sucesso CodeDeploy a implantação de uma revisão em uma única instância do Amazon EC2 em um grupo de Auto Scaling\$1

Em seguida, adicione uma instância do Amazon EC2 ao grupo do Auto Scaling. Depois que o Amazon EC2 Auto Scaling adicionar a instância do Amazon EC2, implantará sua revisão na nova CodeDeploy instância.

## Para verificar os resultados (console)
<a name="tutorials-auto-scaling-group-verify-console"></a>

Primeiro, você precisará do DNS público da instância do Amazon EC2.

Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

No painel de navegação do Amazon EC2, em **Auto Scaling**, selecione **Grupos do Auto Scaling** e, em seguida, a entrada. **CodeDeployDemo-AS-Group**.

Na guia **Instâncias**, escolha a ID da instância do Amazon EC2 na lista.

Na página **Instâncias**, na guia **Descrição**, anote o valor **DNS público**. A aparência será semelhante à seguinte: **ec2-01-234-567-890.compute-1.amazonaws.com**.

Usando um navegador da web, mostre a SimpleDemoApp revisão implantada nessa instância do Amazon EC2, usando uma URL como a seguinte:

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

Se você ver a página de parabéns, você usou com sucesso CodeDeploy a implantação de uma revisão em uma única instância do Amazon EC2 em um grupo de Auto Scaling\$1

Em seguida, adicione uma instância do Amazon EC2 ao grupo do Auto Scaling. Depois que o Amazon EC2 Auto Scaling adicionar a instância do Amazon EC2, implantará sua revisão na nova CodeDeploy instância do Amazon EC2.

# Etapa 4: Aumentar o número de instâncias do Amazon EC2 no grupo do Auto Scaling.
<a name="tutorials-auto-scaling-group-scale-up"></a>

Nesta etapa, você instrui o grupo do Auto Scaling para criar uma instância adicional do Amazon EC2. Depois que o Amazon EC2 Auto Scaling criar a CodeDeploy instância, implanta sua revisão nela.

**Topics**
+ [Para aumentar a escala horizontalmente o número de instâncias do Amazon EC2 no grupo do Auto Scaling (CLI)](#tutorials-auto-scaling-group-scale-up-cli)
+ [Para aumentar a escala horizontalmente o número de instâncias do Amazon EC2 no grupo de implantação (console)](#tutorials-auto-scaling-group-scale-up-console)

## Para aumentar a escala horizontalmente o número de instâncias do Amazon EC2 no grupo do Auto Scaling (CLI)
<a name="tutorials-auto-scaling-group-scale-up-cli"></a>

1. Chame o comando **update-auto-scaling-group** para aumentar as instâncias do Amazon EC2 no grupo do Auto Scaling chamado **CodeDeployDemo-AS-Group** de um para dois.

   Em máquinas Linux, macOS ou Unix locais:

   ```
   aws autoscaling update-auto-scaling-group \
     --auto-scaling-group-name CodeDeployDemo-AS-Group \
     --min-size 2 \
     --max-size 2 \
     --desired-capacity 2
   ```

   Em máquinas locais do Windows:

   ```
   aws autoscaling update-auto-scaling-group --auto-scaling-group-name CodeDeployDemo-AS-Group --min-size 2 --max-size 2 --desired-capacity 2
   ```

1. Verifique se o grupo do Auto Scaling possui duas instâncias do Amazon EC2. Chame o comando **describe-auto-scaling-groups** contra **CodeDeployDemo-AS-Group**:

   ```
   aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names CodeDeployDemo-AS-Group --query "AutoScalingGroups[0].Instances[*].[HealthStatus, LifecycleState]" --output text
   ```

   Não prossiga até que ambos os valores retornados mostrem `Healthy` e `InService`.

## Para aumentar a escala horizontalmente o número de instâncias do Amazon EC2 no grupo de implantação (console)
<a name="tutorials-auto-scaling-group-scale-up-console"></a>

1. No painel de navegação do Amazon EC2, em **Auto Scaling** selecione **Grupos do Auto Scaling** e, em seguida, a entrada. **CodeDeployDemo-AS-Group**.

1. Escolha **Ações** e, em seguida, escolha **Editar**.

1. Na guia **Details (Detalhes)**, nas caixas **Desired (Desejado)**, **Min (Mín.)** e **Max (Máx.)**, digite **2** e, em seguida, selecione** Save (Salvar)**.

1. Escolha a guia **Instâncias**. A nova instância do Amazon EC2 aparecerá na lista. (Se a instância não aparecer, talvez seja necessário escolher o botão **Atualizar** algumas vezes). Não continue até que o valor de **InService**apareça na coluna **Lifecycle** e o valor de **Healthy** apareça na coluna **Health Status**.

# Etapa 5: verificar novamente os resultados
<a name="tutorials-auto-scaling-group-reverify"></a>

Nesta etapa, você verificará se a SimpleDemoApp revisão foi CodeDeploy instalada na nova instância no grupo Auto Scaling.

**Topics**
+ [Para verificar os resultados da implantação automática (CLI)](#tutorials-auto-scaling-group-reverify-cli)
+ [Para verificar os resultados da implantação automática (console)](#tutorials-auto-scaling-group-reverify-console)

## Para verificar os resultados da implantação automática (CLI)
<a name="tutorials-auto-scaling-group-reverify-cli"></a>

1. Antes de chamar o comando **get-deployment**, será necessário o ID de implantação automática. Para obter o ID, chame o comando **list-deployments** contra o aplicativo chamado **SimpleDemoApp** e o grupo de implantação chamado **SimpleDemoDG**.

   ```
   aws deploy list-deployments --application-name SimpleDemoApp --deployment-group-name SimpleDemoDG --query "deployments" --output text
   ```

   Deve haver duas implantações IDs. Use aquele que você ainda não usou em uma chamada para o comando **get-deployment**:

   ```
   aws deploy get-deployment --deployment-id deployment-id --query "deploymentInfo.[status, creator]" --output text
   ```

   Além do status de implantação, você verá `autoScaling` na saída do comando. (`autoScaling` significa que o Amazon EC2 Auto Scaling criou a implantação.) 

   Não prossiga até que o estado da implantação mostre `Succeeded`.

1. Antes de chamar o comando **describe-instances**, você precisará da ID da nova instância do Amazon EC2. Para obter este ID, faça outra chamada para o comando **describe-auto-scaling-groups** contra **CodeDeployDemo-AS-Group**:

   ```
   aws autoscaling describe-auto-scaling-groups --auto-scaling-group-names CodeDeployDemo-AS-Group --query "AutoScalingGroups[0].Instances[*].InstanceId" --output text
   ```

   Agora faça uma chamada para o comando **describe-instances**:

   ```
   aws ec2 describe-instances --instance-id instance-id --query "Reservations[0].Instances[0].PublicDnsName" --output text
   ```

   Na saída do comando **describe-instances**, anote o DNS público da nova instância do Amazon EC2.

1. Usando um navegador da Web, mostre a revisão do `SimpleDemoApp` implantada nessa instância do Amazon EC2 usando uma URL como a seguinte:

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

   Se a página de parabéns aparecer, você costumava CodeDeploy implantar uma revisão em uma instância ampliada do Amazon EC2 em um grupo de Auto Scaling\$1

## Para verificar os resultados da implantação automática (console)
<a name="tutorials-auto-scaling-group-reverify-console"></a>

1. Faça login no Console de gerenciamento da AWS e abra o CodeDeploy console em [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy).
**nota**  
Faça login com o mesmo usuário que você configurou em [Começando com CodeDeploy](getting-started-codedeploy.md).

1. No painel de navegação, expanda a opção **Implantar** e escolha **Implantações**.

   

1. Selecione a ID de implantação da implantação que o Amazon EC2 Auto Scaling criou.

   .

1.  A página **Deployment (Implantação)** exibe informações sobre a implantação. Normalmente, você criaria uma implantação por conta própria, mas o Amazon EC2 Auto Scaling criou uma para você, para implantar sua revisão na nova instância do Amazon EC2.

1. Depois que **Succeeded (Bem-sucedida)** for exibido na parte superior da página, verifique os resultados na instância. Em primeiro lugar, é necessário obter o DNS público da instância:

1. No painel de navegação do Amazon EC2, em **Auto Scaling**, selecione **Grupos do Auto Scaling** e, em seguida, a entrada. **CodeDeployDemo-AS-Group**.

1. Na guia **Instâncias**, escolha a ID da nova instância do Amazon EC2.

1. Na página **Instâncias**, na guia **Descrição**, anote o valor **DNS público**. A aparência será semelhante à seguinte: **ec2-01-234-567-890.compute-1.amazonaws.com**.

Mostre a revisão de `SimpleDemoApp` implantada na instância usando uma URL como a seguinte:

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

Se a página de parabéns aparecer, você costumava CodeDeploy implantar uma revisão em uma instância ampliada do Amazon EC2 em um grupo de Auto Scaling\$1

# Etapa 6: limpar
<a name="tutorials-auto-scaling-group-clean-up"></a>

Nesta etapa, você excluirá o grupo do Auto Scaling para evitar cobranças contínuas pelos recursos usados durante este tutorial. Opcionalmente, você pode excluir a configuração do Auto Scaling CodeDeploy e os registros do componente de implantação.

**Topics**
+ [Para limpar recursos (CLI)](#tutorials-auto-scaling-group-clean-up-cli)
+ [Para limpar recursos (console)](#tutorials-auto-scaling-group-clean-up-console)

## Para limpar recursos (CLI)
<a name="tutorials-auto-scaling-group-clean-up-cli"></a>

1. Excluir o grupo do Auto Scaling chamando o comando **delete-auto-scaling-group** contra **CodeDeployDemo-AS-Group**. Isso também terminará as instâncias do Amazon EC2. 

   ```
   aws autoscaling delete-auto-scaling-group --auto-scaling-group-name CodeDeployDemo-AS-Group --force-delete
   ```

1. Opcionalmente, exclua a configuração de execução do Auto Scaling chamando o comando **delete-launch-template** contra a configuração de execução chamada **CodeDeployDemo-AS-Launch-Template**:

   ```
   aws ec2 delete-launch-template --launch-template-name CodeDeployDemo-AS-Launch-Template
   ```

1. Opcionalmente, exclua o aplicativo CodeDeploy chamando o **delete-application** comando no aplicativo chamado**SimpleDemoApp**. Isso também excluirá todos os registros associados de implantação, grupo de implantação e revisão. 

   ```
   aws deploy delete-application --application-name SimpleDemoApp
   ```

1. Para excluir a associação do gerenciador de estados do Systems Manager, chame o comando **delete-association**.

   ```
   aws ssm delete-association --assocation-id association-id
   ```

   Você pode obter o *association-id* chamando o **describe-association** comando.

   ```
   aws ssm describe-association --name AWS-ConfigureAWSPackage --targets Key=tag:Name,Values=CodeDeployDemo
   ```

## Para limpar recursos (console)
<a name="tutorials-auto-scaling-group-clean-up-console"></a>

Para excluir o grupo do Auto Scaling, que também encerra as instâncias do Amazon EC2:

1. 

   Faça login no Console de gerenciamento da AWS e abra o console do Amazon EC2 em. [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/)

1. No painel de navegação do Amazon EC2, em **Auto Scaling**, selecione **Grupos do Auto Scaling** e, em seguida, a entrada. **CodeDeployDemo-AS-Group**.

1. Escolha **Ações**, **Excluir** e, em seguida, **Sim, excluir**.

(Opcional) Excluir o modelo de execução:

1.  Na barra de navegação, em **Ajuste de escala automático**, selecione **Configurações de execução** e, em seguida, escolha **CodeDeployDemo-AS-Launch-Template**.

1. Escolha **Ações**, **Excluir configuração de execução** e, em seguida, **Sim, excluir**.

1. Opcionalmente, exclua o aplicativo de CodeDeploy. Isso também excluirá todos os registros associados de implantação, grupo de implantação e revisão. Abra o CodeDeploy console em [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy).

1. Faça login no Console de gerenciamento da AWS e abra o CodeDeploy console em [https://console.aws.amazon.com/codedeploy](https://console.aws.amazon.com/codedeploy).
**nota**  
Faça login com o mesmo usuário que você configurou em [Começando com CodeDeploy](getting-started-codedeploy.md).

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

   

1. Na lista de aplicativos, selecione **SimpleDemoApp**.

1. Na página **Detalhes da aplicação**, escolha **Excluir aplicativo**.

1. Quando solicitado, digite **Delete** e escolha **Excluir**. 

Para excluir a associação do gerenciador de estados do Systems Manager:

1. Abra o AWS Systems Manager console em https://console.aws.amazon.com /systems-manager.

1. No painel de navegação, escolha **State Manager**.

1. Escolha a associação criada e selecione **Excluir**.