Adhesión del grupo de destino - AWSGuía prescriptiva

Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.

Adhesión del grupo de destino

Cuando se utiliza un Application Load Balancer con un nivel de adherencia al grupo objetivo:

Plantilla: utilice laAWS CloudFormation plantillatargetgroupstickiness.yml (incluida en el archivo zip de código de ejemplo) para probar la adherencia del grupo objetivo.

Casos de uso comunes

Utilice la adherencia del grupo objetivo en estos escenarios:

  • Hay varios grupos de destino asignados al balanceador de cargas y el tráfico de un cliente debe enrutarse de manera coherente a las instancias de ese grupo de destino.

  • Implementaciones «blue/green» de la empresa.

Cambios de código desde basic.yml

Se ha realizado un solo cambio en el oyente: modificamos las acciones predeterminadas del Application Load Balancer para especificar dos grupos de destino (TG1yTG2) de igual peso, con una configuración de adherencia.

basic.yml targetgroupstickiness.yml
Listener1: Type: 'AWS::ElasticLoadBalancingV2::Listener' Properties: LoadBalancerArn: !Ref ALB Protocol: HTTP Port: 80 DefaultActions: - TargetGroupArn: !Ref TG1 Type: forward
Listener1: Type: 'AWS::ElasticLoadBalancingV2::Listener' Properties: LoadBalancerArn: !Ref ALB Protocol: HTTP Port: 80 DefaultActions: - ForwardConfig: TargetGroups: - TargetGroupArn: !Ref TG1 Weight: 1 - TargetGroupArn: !Ref TG2 Weight: 1 TargetGroupStickinessConfig: DurationSeconds: 10 Enabled: true Type: forward

Pasos

Notas
  • Las pasarelas NAT tienen un coste reducido.

  • Varias instancias de EC2 consumen sus horas de nivel gratuitas más rápido que una sola instancia de EC2.

  1. Implemente la CloudFormation plantillatargetgroupstickiness.yml en un entorno de laboratorio.

  2. Espera hasta que el estado de salud de las instancias de tu grupo objetivo cambie de inicial a saludable.

  3. Navegue hasta la URL del Application Load Balancer en un navegador web mediante HTTP (TCP/80).

    Por ejemplo: http://alb-123456789.us-east-1.elb.amazonaws.com/

    La página web muestra una de las siguientes opciones: Instancia 1: TG1, Instancia 2: TG1, Instancia 3: TG2 o Instancia 4: TG2.

  4. Actualiza la página varias veces.

Resultados del estudio

nota

La CloudFormation plantilla de este ejemplo configura la adherencia para que dure 10 segundos.

Las instancias que cargan la página web deben permanecer dentro del grupo de destino (TG1 o TG2) dentro de los 10 segundos de duración, tal como se refleja en el texto de la página.

Después de aproximadamente 10 segundos, se libera la adherencia y el conjunto de instancias del grupo objetivo puede cambiar.

Cómo funciona

  • En este ejemplo, cuatro instancias de EC2 se dividen en dos grupos de destino, con dos instancias por grupo objetivo. Las instancias de EC2 tienen instalado un servidor web Apache (httpd) y el texto de laindex.html página de cada instancia de EC2 está codificado para que sea distinto.

  • El Application Load Balancer crea un enlace para la sesión del usuario con el grupo objetivo de destino, con una fecha de caducidad.

  • Al volver a cargar la página, el Application Load Balancer comprueba si el enlace existe y no ha caducado.

    • Si el enlace ha caducado o no existe, el Application Load Balancer ejecuta su lógica de enrutamiento y determina el grupo objetivo de destino.

    • Si el enlace no ha caducado, el Application Load Balancer dirige el tráfico al mismo grupo de destino, pero no necesariamente a la misma instancia de EC2.