Introdução aos Application Load Balancers usando o AWS CLI - Elastic Load Balancing

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

Introdução aos Application Load Balancers usando o AWS CLI

Este tutorial fornece uma introdução prática aos Application Load Balancers por meio do. AWS CLI

Antes de começar

  • Use o comando a seguir para verificar se você está executando uma versão da AWS CLI compatível com Application Load Balancers.

    aws elbv2 help

    Se você receber uma mensagem de erro de que o elbv2 não é uma opção válida, atualize sua AWS CLI. Para obter mais informações, consulte Instalar a AWS Command Line Interface no Guia do usuário da AWS Command Line Interface .

  • Execute suas EC2 instâncias em uma nuvem privada virtual (VPC). Certifique-se de que os security groups dessas instâncias permitam acesso na porta do listener e na porta de verificação de integridade. Para obter mais informações, consulte Grupos de segurança de destino.

  • Decida se você criará um balanceador de IPv4 carga ou dualstack. Use IPv4 se quiser que os clientes se comuniquem com o balanceador de carga usando somente IPv4 endereços. Use o dualstack se quiser que os clientes se comuniquem com o balanceador de carga usando endereços. IPv4 IPv6 Você também pode usar o dualstack para se comunicar com destinos de back-end, como IPv6 aplicativos ou sub-redes dualstack, usando. IPv6

  • Certifique-se de instalar um servidor web, como Apache ou Internet Information Services (IIS), em cada EC2 instância. Certifique-se de que os grupos de segurança dessas instâncias permitam HTTP acesso na porta 80.

Criar um load balancer

Para criar seu primeiro load balancer, conclua as etapas a seguir.

Para criar um load balancer
  1. Use o create-load-balancercomando para criar um balanceador de carga. Você deve especificar duas sub-redes que não estejam na mesma Zona de disponibilidade.

    aws elbv2 create-load-balancer --name my-load-balancer \ --subnets subnet-0e3f5cac72EXAMPLE subnet-081ec835f3EXAMPLE --security-groups sg-07e8ffd50fEXAMPLE

    Use o create-load-balancercomando para criar um dualstack balanceador de carga.

    aws elbv2 create-load-balancer --name my-load-balancer \ --subnets subnet-0e3f5cac72EXAMPLE subnet-081ec835f3EXAMPLE --security-groups sg-07e8ffd50fEXAMPLE --ip-address-type dualstack

    A saída inclui o Amazon Resource Name (ARN) do balanceador de carga, com o seguinte formato:

    arn:aws:elasticloadbalancing:us-east-2:123456789012:loadbalancer/app/my-load-balancer/1234567890123456
  2. Use o create-target-groupcomando para criar um grupo-alvo, especificando o mesmo VPC que você usou para suas EC2 instâncias.

    Você pode criar IPv4 e IPv6 direcionar grupos para associá-los aos balanceadores de carga de pilha dupla. O tipo de endereço IP do grupo de destino determina a versão do IP que o balanceador de carga usará para se comunicar e verificar a integridade dos destinos de back-end.

    aws elbv2 create-target-group --name my-targets --protocol HTTP --port 80 \ --vpc-id vpc-0598c7d356EXAMPLE --ip-address-type [ipv4 or ipv6]

    A saída inclui a ARN do grupo-alvo, com este formato:

    arn:aws:elasticloadbalancing:us-east-2:123456789012:targetgroup/my-targets/1234567890123456
  3. Use o comando register-targets para registrar suas instâncias com o grupo de destino:

    aws elbv2 register-targets --target-group-arn targetgroup-arn \ --targets Id=i-0abcdef1234567890 Id=i-1234567890abcdef0
  4. Use o comando create-listener para criar um listener para seu load balancer com uma regra padrão que encaminha solicitações ao seu grupo de destino:

    aws elbv2 create-listener --load-balancer-arn loadbalancer-arn \ --protocol HTTP --port 80 \ --default-actions Type=forward,TargetGroupArn=targetgroup-arn

    A saída contém o ARN do ouvinte, com o seguinte formato:

    arn:aws:elasticloadbalancing:us-east-2:123456789012:listener/app/my-load-balancer/1234567890123456/1234567890123456
  5. (Opcional) Você pode verificar a integridade dos alvos registrados para seu grupo-alvo usando este describe-target-healthcomando:

    aws elbv2 describe-target-health --target-group-arn targetgroup-arn

Adicionar um HTTPS ouvinte

Se você tiver um balanceador de carga com um HTTP ouvinte, poderá adicionar um HTTPS ouvinte da seguinte maneira.

Para adicionar um HTTPS ouvinte ao seu balanceador de carga
  1. Crie um SSL certificado para uso com seu balanceador de carga usando um dos seguintes métodos:

  2. Use o comando create-listener para criar o listener com uma regra padrão que encaminha solicitações para seu grupo de destino. Você deve especificar um SSL certificado ao criar um HTTPS ouvinte. Observe que você pode especificar uma SSL política diferente da padrão usando a --ssl-policy opção.

    aws elbv2 create-listener --load-balancer-arn loadbalancer-arn \ --protocol HTTPS --port 443 \ --certificates CertificateArn=certificate-arn \ --default-actions Type=forward,TargetGroupArn=targetgroup-arn

Adicionar roteamento baseado em caminho

Se você tiver um ouvinte com uma regra padrão que encaminha solicitações para um grupo-alvo, você pode adicionar uma regra que encaminha solicitações para outro grupo-alvo com base em. URL Por exemplo, você pode rotear solicitações gerais para um grupo de destino e solicitar a exibição de imagens a outro grupo de destino.

Para adicionar uma regra para um listener com um padrão de caminho
  1. Use o create-target-groupcomando para criar um grupo-alvo:

    aws elbv2 create-target-group --name my-targets --protocol HTTP --port 80 \ --vpc-id vpc-0598c7d356EXAMPLE
  2. Use o comando register-targets para registrar suas instâncias com o grupo de destino:

    aws elbv2 register-targets --target-group-arn targetgroup-arn \ --targets Id=i-0abcdef1234567890 Id=i-1234567890abcdef0
  3. Use o comando create-rule para adicionar uma regra ao seu ouvinte que encaminha solicitações para o grupo-alvo se ele contiver o padrão especificado: URL

    aws elbv2 create-rule --listener-arn listener-arn --priority 10 \ --conditions Field=path-pattern,Values='/img/*' \ --actions Type=forward,TargetGroupArn=targetgroup-arn

Excluir o load balancer

Quando você não precisar mais de seu load balancer e grupo de destino, pode excluí-los da seguinte forma:

aws elbv2 delete-load-balancer --load-balancer-arn loadbalancer-arn aws elbv2 delete-target-group --target-group-arn targetgroup-arn