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á.
Nesta etapa, você criará um grupo de Auto Scaling que contém uma única instância Amazon Linux, RHEL ou Windows Server da Amazon. EC2 Em uma etapa posterior, você instruirá o Amazon EC2 Auto Scaling a adicionar mais uma instância EC2 da Amazon CodeDeploy e implantará sua revisão nela.
Tópicos
Como criar e configurar o grupo do Auto Scaling (CLI)
-
Chame o create-launch-template comando para criar um modelo de EC2 lançamento da Amazon.
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 do key pair de uma EC2 instância da Amazon para permitir o acesso à EC2 instância da Amazon, representado pelo placeholderkey-name
.Para obter o ID de uma AMI que funcione com este tutorial:
-
Abra o EC2 console da Amazon em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, em Instâncias, escolha Instâncias e, em seguida, escolha Iniciar instância.
-
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 Scaling, consulte. Usando uma AMI personalizada com o CodeDeploy Amazon EC2 Auto Scaling
Para o par de chaves da EC2 instância da Amazon, use o nome do par de chaves da sua EC2 instância da Amazon.
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 EC2 lançamento da Amazon com o nome CodeDeployDemo-AS-Launch-Template do seu grupo de Auto Scaling, que será criado na próxima etapa com base no tipo de instância t1.micro da Amazon EC2 . Com base em sua entrada paraImageId
,IamInstanceProfile
, eKeyName
, o modelo de lançamento também especifica o ID da AMI, o nome do perfil da instância associado à função do IAM a ser transmitido às instâncias na inicialização e o par de EC2 chaves da Amazon a ser usado ao se conectar às instâncias. -
-
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 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.
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=trueEm 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=trueEsses comandos criam um grupo de Auto Scaling nomeado
CodeDeployDemo-AS-Group
com base no modelo de EC2 lançamento da Amazon nomeado.CodeDeployDemo-AS-Launch-Template
Esse grupo de Auto Scaling tem apenas uma EC2 instância da Amazon e é criado na zona de disponibilidade especificada. Cada instância nesse grupo do Auto Scaling terá a tagName=CodeDeployDemo
. A tag será usada ao instalar o CodeDeploy agente posteriormente. -
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
eInService
. -
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. Para obter mais informações sobre o Systems Manager, consulte O que é o AWS Systems Manager.
Como criar e configurar o grupo do Auto Scaling (console)
-
Abra o EC2 console da Amazon em https://console.aws.amazon.com/ec2/
. -
Na barra de navegação global, certifique-se de que uma das regiões listadas em Região e endpoints em Referência geral da AWS esteja selecionada. Os recursos do Amazon EC2 Auto Scaling estão vinculados à região que você CodeDeploy especifica e são suportados somente em regiões selecionadas.
-
Na barra de navegação, escolha Instances e, em seguida, Launch Templates.
-
Escolha Criar modelo de execução.
-
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. -
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:
-
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 Scaling, consulte. Usando uma AMI personalizada com o CodeDeploy Amazon EC2 Auto Scaling
-
-
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.
-
Na caixa de diálogo Par de chaves (login), selecione Escolher um par de chaves existente. Na lista suspensa Selecionar um par de chaves, escolha o par de chaves da EC2 instância Amazon que você criou ou usou nas etapas anteriores.
-
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 (
CodeDeployDemo-AS-SG
). -
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.
-
Escolha Criar modelo de execução.
-
Na caixa de diálogo Próximas etapas, escolha Criar grupo do Auto Scaling.
-
Na página Escolher modelo ou configuração de execução, para Nome do grupo do Auto Scaling, insira
CodeDeployDemo-AS-Group
. -
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. -
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.
-
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.
-
Selecione Next (Próximo) para ir até a página Configure advanced options (Configurar opções avançadas).
-
Mantenha os outros valores padrão e escolha Próximo.
-
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.
-
Ignore a etapa de configuração de notificações e escolha Próximo.
-
Na página Adicionar tags, adicione uma tag a ser usada ao instalar o CodeDeploy agente posteriormente. Escolha Adicionar Tag.
-
Em Chave, insira
Name
. -
Em Valor, informe
CodeDeployDemo
.
Escolha Próximo.
-
-
Na página Revisar, reveja as configurações do grupo do Auto Scaling e escolha Criar grupo do Auto Scaling.
-
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 InServiceapareça na coluna Lifecycle e o valor de Healthy apareça na coluna Health Status. -
Instale o CodeDeploy agente seguindo as etapas em Instalar o CodeDeploy agente e usando as tags da
Name=CodeDeployDemo
instância.