Configure um balanceador de carga, grupos-alvo e ouvintes para implantações do CodeDeploy Amazon ECS - 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á.

Configure um balanceador de carga, grupos-alvo e ouvintes para implantações do CodeDeploy Amazon ECS

Antes de executar uma implantação usando a plataforma de computação do Amazon ECS, você deve criar um Application Load Balancer ou um Network Load Balancer, dois grupos de destino e um ou dois receptores. Este tópico mostra como criar um Application Load Balancer. Para ter mais informações, consulte Antes de começar uma implantação do .

Um dos grupos de destino direciona o tráfego para o conjunto de tarefas original do aplicativo do Amazon ECS. O outro grupo de destino direciona o tráfego para o conjunto de tarefas de substituição. Durante a implantação, CodeDeploy cria um conjunto de tarefas de substituição e redireciona o tráfego do conjunto de tarefas original para o novo. CodeDeploy determina qual grupo-alvo é usado para cada conjunto de tarefas.

Um listener é usado pelo load balancer para direcionar o tráfego para os grupos de destino. Um listener de produção é necessário. Você pode especificar um listener de teste opcional que direciona o tráfego para o conjunto de tarefas de substituição enquanto você executa testes de validação.

O load balancer deve usar uma VPC com duas sub-redes públicas em diferentes zonas de disponibilidade. As etapas a seguir mostram como confirmar sua VPC padrão, criar um Application Load Balancer do Amazon EC2 e criar dois grupos de destino para o balanceador de carga. Para obter mais informações, consulte Grupos de destino para seus Network Load Balancers.

Verificar a VPC padrão, as sub-redes públicas e o grupo de segurança

Este tópico mostra como criar um Application Load Balancer do Amazon EC2, dois grupos de destino e duas portas que podem ser usadas durante uma implantação do Amazon ECS. Uma das portas é opcional e necessária somente se você direcionar o tráfego para uma porta de teste de validação durante a implantação.

  1. Faça login AWS Management Console e abra o console da Amazon VPC em https://console.aws.amazon.com/vpc/.

  2. Verifique a VPC padrão a ser usada. No painel de navegação, escolha Your VPCs (Suas VPCs). Observe qual VPC exibe Sim na coluna de VPC padrão. Essa é a sua VPC padrão. Ela contém sub-redes padrão que você usa.

  3. Selecione Subnets (Sub-redes). Anote os IDs das duas sub-redes que mostram Sim na coluna Sub-rede padrão. Use esses IDs ao criar o load balancer.

  4. Depois de escolher cada sub-rede, escolha a guia Description (Descrição). Verifique se as sub-redes que você deseja utilizar se encontram em diferentes zonas de disponibilidade.

  5. Selecione as sub-redes e escolha a guia Route Table (Tabela de rotas). Para verificar se cada sub-rede que você deseja usar é uma sub-rede pública, confirme se uma linha com um link para um gateway da Internet está incluída na tabela de rotas.

  6. Faça login no AWS Management Console e abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  7. No painel de navegação, escolha Security groups (Grupos de segurança).

  8. Verifique se o grupo de segurança que você deseja usar está disponível e anote o ID do grupo (por exemplo, sg-abcd1234). Você o usará ao criar o load balancer.

Crie um Application Load Balancer do Amazon EC2, dois grupos-alvo e receptores (console)

Para usar o console do Amazon EC2 para criar um Application Load Balancer do Amazon EC2:

  1. Faça login no AWS Management Console e abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, selecione Load Balancers.

  3. Selecione Criar load balancer.

  4. Selecione Application Load Balancer e clique em Create (Criar).

  5. Em Name (Nome), informe o nome do load balancer.

  6. Em Scheme (Esquema), selecione Internet-facing (Voltado para a Internet).

  7. Em IP address type (Tipo de endereço IP), selecione ipv4.

  8. (Opcional) Configure uma segunda porta do listener para o load balancer. Você pode executar testes de validação da implantação usando o tráfego de teste fornecido para essa porta.

    1. Em Load Balancer Protocol (Protocolo do load balancer), escolha Add listener (Adicionar listener).

    2. Em Load Balancer Protocol (Protocolo do load balancer) para o segundo listener, selecione HTTP.

    3. Em Load Balancer Port (Porta do load balancer), insira 8080.

  9. Em Availability Zones (Zonas de disponibilidade), em VPC, escolha a VPC padrão e selecione as duas sub-redes padrão que você deseja usar.

  10. Selecione Next: Configure Security Settings (Próximo: Definir configurações de segurança).

  11. Selecione Next: Configure Security Groups (Próximo: Configurar grupos de segurança).

  12. Escolha Select an existing security group (Selecionar um grupo de segurança existente), escolha o grupo de segurança padrão e anote seu ID.

  13. Selecione Next: Configure Routing (Próximo: Configurar roteamento).

  14. Em Target group (Grupo de destino), selecione New target group (Novo grupo de destino) e configure o primeiro grupo de destino:

    1. Em Nome, informe o nome do grupo de destino (por exemplo, target-group-1).

    2. Em Tipo de destino, selecione IP.

    3. Em Protocolo: Selecione HTTP. Em Porta, insira 80.

    4. Selecione Next: Register Targets (Próximo: Registrar destinos).

  15. Selecione Next: Review (Próximo: Análise) e Create (Criar).

Criar um grupo de destino para seu load balancer.
  1. Após a provisão do balanceador de carga, abra o console do Amazon EC2. No painel de navegação, selecione Grupos de destino.

  2. Selecione Criar grupo de destino.

  3. Em Nome, informe o nome do grupo de destino (por exemplo, target-group-2).

  4. Em Tipo de destino, selecione IP.

  5. Em Protocolo: Selecione HTTP. Em Porta, insira 80.

  6. Em VPC, escolha a VPC padrão.

  7. Escolha Criar.

    nota

    Para que sua implantação do Amazon ECS seja executada, é necessário ter dois grupos de destino criados para seu balanceador de carga. Você usará o ARN de um de seus grupos de destino ao criar o serviço do Amazon ECS. Para obter mais informações, consulte Etapa 4: Criar um serviço do Amazon ECS no Guia do usuário do Amazon ECS.

Crie um Application Load Balancer do Amazon EC2, dois grupos de destino e receptores (CLI)

Para criar um Application Load Balancer usando a AWS CLI:

  1. Use o create-load-balancercomando para criar um Application Load Balancer. Especifique duas sub-redes que não estejam na mesma zona de disponibilidade e um grupo de segurança.

    aws elbv2 create-load-balancer --name bluegreen-alb \ --subnets subnet-abcd1234 subnet-abcd5678 --security-groups sg-abcd1234 --region us-east-1

    A saída inclui o nome de recurso da Amazon (ARN) do load balancer, no seguinte formato:

    arn:aws:elasticloadbalancing:region:aws_account_id:loadbalancer/app/bluegreen-alb/e5ba62739c16e642
  2. Use o create-target-groupcomando para criar seu primeiro grupo-alvo. CodeDeploy direciona o tráfego desse grupo-alvo para a tarefa original ou para a tarefa de substituição definida em seu serviço.

    aws elbv2 create-target-group --name bluegreentarget1 --protocol HTTP --port 80 \ --target-type ip --vpc-id vpc-abcd1234 --region us-east-1

    A saída inclui o ARN do primeiro grupo de destino, no seguinte formato:

    arn:aws:elasticloadbalancing:region:aws_account_id:targetgroup/bluegreentarget1/209a844cd01825a4
  3. Use o create-target-groupcomando para criar seu segundo grupo-alvo. CodeDeploy direciona o tráfego do grupo-alvo para o conjunto de tarefas que não é atendido pelo seu primeiro grupo-alvo. Por exemplo, se o primeiro grupo de destino rotear o tráfego para o conjunto de tarefas original, o tráfego desse grupo de destino roteará o tráfego para o conjunto de tarefas de substituição.

    aws elbv2 create-target-group --name bluegreentarget2 --protocol HTTP --port 80 \ --target-type ip --vpc-id vpc-abcd1234 --region us-east-1

    A saída inclui o ARN do segundo grupo de destino, no seguinte formato:

    arn:aws:elasticloadbalancing:region:aws_account_id:targetgroup/bluegreentarget2/209a844cd01825a4
  4. Use o comando create-listener para criar um listener com uma regra padrão que encaminha o tráfego de produção para a porta 80.

    aws elbv2 create-listener --load-balancer-arn arn:aws:elasticloadbalancing:region:aws_account_id:loadbalancer/app/bluegreen-alb/e5ba62739c16e642 \ --protocol HTTP --port 80 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:region:aws_account_id:targetgroup/bluegreentarget1/209a844cd01825a4 --region us-east-1

    A saída inclui o ARN do listener, no seguinte formato:

    arn:aws:elasticloadbalancing:region:aws_account_id:listener/app/bluegreen-alb/e5ba62739c16e642/665750bec1b03bd4
  5. (Opcional) Use o comando create-listener para criar um segundo listener com uma regra padrão que encaminha o tráfego de teste para a porta 8080. Você pode executar testes de validação da implantação usando o tráfego de teste que é atendido por essa porta.

    aws elbv2 create-listener --load-balancer-arn arn:aws:elasticloadbalancing:region:aws_account_id:loadbalancer/app/bluegreen-alb/e5ba62739c16e642 \ --protocol HTTP --port 8080 \ --default-actions Type=forward,TargetGroupArn=arn:aws:elasticloadbalancing:region:aws_account_id:targetgroup/bluegreentarget2/209a844cd01825a4 --region us-east-1

    A saída inclui o ARN do listener, no seguinte formato:

    arn:aws:elasticloadbalancing:region:aws_account_id:listener/app/bluegreen-alb/e5ba62739c16e642/665750bec1b03bd4