Crie uma instância do Amazon EC2 para CodeDeploy (modelo)AWS CloudFormation - 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á.

Crie uma instância do Amazon EC2 para CodeDeploy (modelo)AWS CloudFormation

Você pode usar nosso AWS CloudFormation modelo para iniciar rapidamente uma instância do Amazon EC2 executando o Amazon Linux ou o Windows Server. Você pode usar o AWS CLI, o CodeDeploy console ou as AWS APIs para iniciar a instância com o modelo. Além de iniciar a instância, o template faz o seguinte:

  • Instrui AWS CloudFormation a conceder permissão à instância para participar das CodeDeploy implantações.

  • Marca a instância para que CodeDeploy possa encontrá-la durante uma implantação.

  • Instala e executa o CodeDeploy agente na instância.

Você não precisa usar o nosso AWS CloudFormation para configurar uma instância do Amazon EC2. Para conhecer alternativas, consulte Trabalhando com instâncias para CodeDeploy.

Não fornecemos um AWS CloudFormation modelo para instâncias do Amazon EC2 executando o Ubuntu Server ou o Red Hat Enterprise Linux (RHEL).

Antes de começar

Antes de usar o AWS CloudFormation modelo para iniciar instâncias do Amazon EC2, certifique-se de concluir as etapas a seguir.

  1. Certifique-se de ter criado um usuário administrativo, conforme descrito em Etapa 1: configuração. Verifique se o usuário tem as seguintes permissões mínimas e adicione as que não estão presentes:

    • cloudformation:*

    • codedeploy:*

    • ec2:*

    • objetivo: AddRoleToInstanceProfile

    • objetivo: CreateInstanceProfile

    • objetivo: CreateRole

    • objetivo: DeleteInstanceProfile

    • objetivo: DeleteRole

    • objetivo: DeleteRolePolicy

    • objetivo: GetRole

    • objetivo: DeleteRolePolicy

    • objetivo: PutRolePolicy

    • objetivo: RemoveRoleFromInstanceProfile

  2. Certifique-se de ter um par de chaves de instância para permitir o acesso SSH à instância do Amazon EC2 executando o Amazon Linux ou acesso RDP à instância que executa o Windows Server.

    Para encontrar o nome de um par de chaves, abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2. No painel de navegação, em Rede e segurança, escolha Pares de chaves e anote o nome do par de chaves na lista.

    Para gerar um novo par de chaves, consulte Criando seu par de chaves com o Amazon EC2. Verifique se o par de chaves foi criado em uma das regiões listadas em Região e endpoints no Referência geral da AWS. Caso contrário, você não poderá usar o par de chaves da instância com CodeDeploy.

Execute uma instância do Amazon EC2 com o AWS CloudFormation modelo (console)

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

    Importante

    Faça login no AWS Management Console com a mesma conta que você usouComeçando com CodeDeploy. Na barra de navegação, no seletor de região, escolha uma das regiões listadas em Região e endpoints em. Referência geral da AWS CodeDeploy suporta somente essas regiões.

  2. Selecione Create Stack (Criar pilha).

  3. Em Escolher um modelo, selecione Especificar um URL do modelo do Amazon S3. Na caixa, digite a localização do AWS CloudFormation modelo para sua região e escolha Avançar.

    Região Localização do AWS CloudFormation modelo
    Região Leste dos EUA (Ohio) http://s3-us-east-2.amazonaws.com/aws-codedeploy-us-east-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Leste dos EUA (N. da Virgínia) http://s3.amazonaws.com/aws-codedeploy-us-east-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Oeste dos EUA (Norte da Califórnia) http://s3-us-west-1.amazonaws.com/aws-codedeploy-us-west-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Oeste dos EUA (Oregon) http://s3-us-west-2.amazonaws.com/aws-codedeploy-us-west-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Canadá (Central) http://s3-ca-central-1.amazonaws.com/aws-codedeploy-ca-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Europa (Irlanda) http://s3-eu-west-1.amazonaws.com/aws-codedeploy-eu-west-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Europa (Londres) http://s3-eu-west-2.amazonaws.com/aws-codedeploy-eu-west-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Europa (Paris) http://s3-eu-west-3.amazonaws.com/aws-codedeploy-eu-west-3/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Europa (Frankfurt) http://s3-eu-central-1.amazonaws.com/aws-codedeploy-eu-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região de Israel (Tel Aviv) http://s3-il-central-1.amazonaws.com/aws-codedeploy-il-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Hong Kong) http://s3-ap-east-1.amazonaws.com/aws-codedeploy-ap-east-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Tóquio) http://s3-ap-northeast-1.amazonaws.com/aws-codedeploy-ap-northeast-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Seul) http://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Singapura) http://s3-ap-southeast-1.amazonaws.com/aws-codedeploy-ap-southeast-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Asia Pacific (Sydney) Region http://s3-ap-southeast-2.amazonaws.com/aws-codedeploy-ap-southeast-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Melbourne) https://aws-codedeploy-ap-southeast-4.s3.ap-southeast-4.amazonaws.com/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Mumbai) http://s3-ap-south-1.amazonaws.com/aws-codedeploy-ap-south-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região América do Sul (São Paulo) aws-codedeploy-ap-northeast-1.s3.sa-east-1.amazonaws.com/templates/latest/CodeDeploy_SampleCF_Template.json
  4. Na caixa Stack name (Nome da pilha), digite um nome para a pilha (por exemplo, CodeDeployDemoStack).

  5. Em Parâmetros, digite o seguinte e escolha Avançar.

    • Para InstanceCount, digite o número de instâncias que você deseja iniciar. (Recomendamos deixar o padrão de 1.)

    • Para InstanceType, digite o tipo de instância que você deseja iniciar (ou deixe o padrão de t1.micro).

    • Para KeyPairName, digite o nome do par de chaves da instância. Digite apenas o nome do par de chaves, e não sua extensão de arquivo.

    • Em OperatingSystembox, digite Windows para iniciar instâncias executando o Windows Server (ou deixe o padrão do Linux).

    • Para SSHLocation, digite o intervalo de endereços IP a ser usado para se conectar à instância com o SSH ou o RDP (ou deixe o padrão de 0.0.0.0/0).

      Importante

      O padrão de 0.0.0.0/0 é fornecido apenas para fins de demonstração. CodeDeploy não exige que as instâncias do Amazon EC2 tenham acesso irrestrito às portas. Como prática recomendada, recomendamos restringir o acesso às portas SSH (e HTTP). Para obter mais informações, consulte Dicas para proteger sua instância do Amazon EC2.

    • Para TagKey, digite a tag de instância que a chave CodeDeploy usará para identificar as instâncias durante a implantação (ou deixe o padrão de Nome).

    • Para TagValue, digite o valor da tag de instância CodeDeploy que será usado para identificar as instâncias durante a implantação (ou deixe o padrão de CodeDeployDemo).

  6. Na página Opções, deixe as caixas de opções em branco e escolha Avançar.

    Importante

    AWS CloudFormation as tags são diferentes das CodeDeploy tags. AWS CloudFormation usa tags para simplificar a administração da sua infraestrutura. CodeDeploy usa tags para identificar instâncias do Amazon EC2. Você especificou CodeDeploy tags na página Especificar parâmetros.

  7. Na página de revisão, em Capacidades, selecione a caixa Eu reconheço que AWS CloudFormation podem criar recursos do IAM e, em seguida, escolha Criar.

    Depois de criar AWS CloudFormation a pilha e iniciar as instâncias do Amazon EC2, no AWS CloudFormation console, CREATE_COMPLETE será exibido na coluna Status. Esse processo pode levar alguns minutos.

Para verificar se o CodeDeploy agente está sendo executado nas instâncias do Amazon EC2Gerenciando as operações CodeDeploy do agente, consulte e prossiga para. Crie um aplicativo com CodeDeploy

Execute uma instância do Amazon EC2 com o AWS CloudFormation modelo ()AWS CLI

  1. Use nosso AWS CloudFormation modelo em uma chamada para o create-stack comando. Essa pilha iniciará uma nova instância do Amazon EC2 com CodeDeploy o agente instalado.

    Para iniciar uma instância do Amazon EC2 executando o Amazon Linux:

    aws cloudformation create-stack \ --stack-name CodeDeployDemoStack \ --template-url templateURL \ --parameters ParameterKey=InstanceCount,ParameterValue=1 ParameterKey=InstanceType,ParameterValue=t1.micro \ ParameterKey=KeyPairName,ParameterValue=keyName ParameterKey=OperatingSystem,ParameterValue=Linux \ ParameterKey=SSHLocation,ParameterValue=0.0.0.0/0 ParameterKey=TagKey,ParameterValue=Name \ ParameterKey=TagValue,ParameterValue=CodeDeployDemo \ --capabilities CAPABILITY_IAM

    Para iniciar uma instância do Amazon EC2 executando o Windows Server:

    aws cloudformation create-stack --stack-name CodeDeployDemoStack --template-url template-url --parameters ParameterKey=InstanceCount,ParameterValue=1 ParameterKey=InstanceType,ParameterValue=t1.micro ParameterKey=KeyPairName,ParameterValue=keyName ParameterKey=OperatingSystem,ParameterValue=Windows ParameterKey=SSHLocation,ParameterValue=0.0.0.0/0 ParameterKey=TagKey,ParameterValue=Name ParameterKey=TagValue,ParameterValue=CodeDeployDemo --capabilities CAPABILITY_IAM

    keyName é o nome do par de chaves da instância. Digite apenas o nome do par de chaves, e não sua extensão de arquivo.

    template-url é a localização do AWS CloudFormation modelo para sua região:

    Região Localização do AWS CloudFormation modelo
    Região Leste dos EUA (Ohio) http://s3-us-east-2.amazonaws.com/aws-codedeploy-us-east-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Leste dos EUA (N. da Virgínia) http://s3.amazonaws.com/aws-codedeploy-us-east-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Oeste dos EUA (Norte da Califórnia) http://s3-us-west-1.amazonaws.com/aws-codedeploy-us-west-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Oeste dos EUA (Oregon) http://s3-us-west-2.amazonaws.com/aws-codedeploy-us-west-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Canadá (Central) http://s3-ca-central-1.amazonaws.com/aws-codedeploy-ca-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Europa (Irlanda) http://s3-eu-west-1.amazonaws.com/aws-codedeploy-eu-west-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Europa (Londres) http://s3-eu-west-2.amazonaws.com/aws-codedeploy-eu-west-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Europa (Paris) http://s3-eu-west-3.amazonaws.com/aws-codedeploy-eu-west-3/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Europa (Frankfurt) http://s3-eu-central-1.amazonaws.com/aws-codedeploy-eu-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região de Israel (Tel Aviv) http://s3-il-central-1.amazonaws.com/aws-codedeploy-il-central-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Hong Kong) http://s3-ap-east-1.amazonaws.com/aws-codedeploy-ap-east-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Tóquio) http://s3-ap-northeast-1.amazonaws.com/aws-codedeploy-ap-northeast-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Seul) http://s3-ap-northeast-2.amazonaws.com/aws-codedeploy-ap-northeast-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Singapura) http://s3-ap-southeast-1.amazonaws.com/aws-codedeploy-ap-southeast-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Asia Pacific (Sydney) Region http://s3-ap-southeast-2.amazonaws.com/aws-codedeploy-ap-southeast-2/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Melbourne) https://aws-codedeploy-ap-southeast-4.s3.ap-southeast-4.amazonaws.com/templates/latest/CodeDeploy_SampleCF_Template.json
    Região Ásia-Pacífico (Mumbai) http://s3-ap-south-1.amazonaws.com/aws-codedeploy-ap-south-1/templates/latest/CodeDeploy_SampleCF_Template.json
    Região América do Sul (São Paulo) aws-codedeploy-ap-northeast-1.s3.sa-east-1.amazonaws.com/templates/latest/CodeDeploy_SampleCF_Template.json

    Esse comando cria uma AWS CloudFormation pilha chamadaCodeDeployDemoStack, usando o AWS CloudFormation modelo no bucket do Amazon S3 especificado. A instância do Amazon EC2 se baseia no tipo de instância t1.micro, mas você pode usar qualquer tipo. Ela é marcada com o valor CodeDeployDemo, mas você pode marcá-la com qualquer valor. Ela tem o par de chaves de instância especificado aplicado.

  2. Chame o describe-stacks comando para verificar se a AWS CloudFormation pilha chamada CodeDeployDemoStack foi criada com sucesso:

    aws cloudformation describe-stacks --stack-name CodeDeployDemoStack --query "Stacks[0].StackStatus" --output text

    Não prossiga até que o valor CREATE_COMPLETE seja retornado.

Para verificar se o CodeDeploy agente está sendo executado na instância do Amazon EC2Gerenciando as operações CodeDeploy do agente, consulte e prossiga para. Crie um aplicativo com CodeDeploy