

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

# Fixação do grupo-alvo
<a name="target-group-stickiness"></a>

Quando você usa um Application Load Balancer com aderência ao grupo-alvo:
+ O Application Load Balancer usa o [peso do grupo-alvo](https://aws.amazon.com/premiumsupport/knowledge-center/elb-make-weighted-target-groups-for-alb/) para determinar como equilibrar o tráfego de entrada entre os grupos-alvo.
+ Por padrão, o Application Load Balancer usa o método round robin [para encaminhar solicitações para as EC2 instâncias](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/load-balancer-target-groups.html#modify-routing-algorithm) no grupo-alvo de destino.

**Modelo:** use o CloudFormation modelo `targetgroupstickiness.yml` (incluído no [arquivo.zip do código de amostra](samples/stickiness.zip)) para testar a aderência do grupo-alvo. 

## Casos de uso comuns
<a name="tg-stickiness-use-cases"></a>

Use a aderência do grupo-alvo nesses cenários:
+ Há vários grupos-alvo atribuídos ao balanceador de carga, e o tráfego de um cliente deve ser roteado de forma consistente para instâncias dentro desse grupo-alvo.
+ Implantações em azul/verde.

## Alterações no código de basic.yml
<a name="tg-stickiness-code-changes"></a>

Uma única alteração foi feita no ouvinte: modificamos as ações padrão do Application Load Balancer para especificar dois grupos-alvo `TG1` (`TG2`e) de igual peso, com uma configuração de aderência.


****  

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

## Etapas
<a name="tg-stickiness-steps"></a>

**Observações**  
Os gateways NAT têm um custo pequeno.
Várias EC2 instâncias usam suas horas de nível gratuito mais rápido do que uma única EC2 instância.

1. Implante o CloudFormation modelo `targetgroupstickiness.yml` em um ambiente de laboratório.

1. Espere até que o status de saúde das instâncias do seu grupo-alvo mude de **inicial** para **íntegro**.

1. Navegue até o URL do Application Load Balancer em um navegador da Web, usando HTTP (TCP/80).

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

   A página da Web exibe uma das seguintes opções: **Instância 1 - TG1**, **Instância 2 - TG1**, **Instância 3 - TG2** ou **Instância 4 - TG2**.

1. Atualize a página várias vezes.

## Resultados esperados
<a name="tg-stickiness-results"></a>

**nota**  
O CloudFormation modelo neste exemplo configura a aderência para durar 10 segundos.

As instâncias que carregam a página da Web devem permanecer dentro do grupo-alvo (TG1 ou TG2) dentro da duração de 10 segundos, conforme refletido no texto da página.

Após aproximadamente 10 segundos, a aderência é liberada e o conjunto de instâncias do grupo-alvo pode mudar.

## Como funciona
<a name="tg-stickiness-how"></a>
+ Neste exemplo, quatro EC2 instâncias são divididas em dois grupos-alvo, com duas instâncias por grupo-alvo. As EC2 instâncias têm um servidor web Apache (`httpd`) instalado e o texto da `index.html` página em cada EC2 instância é codificado para ser distinto.
+ O Application Load Balancer cria uma vinculação da sessão do usuário ao grupo-alvo de destino, com um prazo de expiração.
+ Quando você recarrega a página, o Application Load Balancer verifica se a vinculação existe e se não expirou.
  + Se a associação expirou ou não existe, o Application Load Balancer executa sua lógica de roteamento e determina o grupo-alvo de destino.
  + Se a vinculação não tiver expirado, o Application Load Balancer roteará o tráfego para o mesmo grupo-alvo, mas não necessariamente para a EC2 mesma instância.