

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

# Configurar o Classic Load Balancer
<a name="elb-configure-load-balancer"></a>

Depois de criar um Classic Load Balancer, você pode alterar sua configuração. Por exemplo, você pode atualizar os atributos, as sub-redes e os grupos de segurança do balanceador de carga.Atributos do load balancer

[Drenagem da conexão](config-conn-drain.md)  
Se habilitado, o balanceador de carga permite que as solicitações existentes sejam concluídas antes que o balanceador de carga cancele o tráfego de uma instância não registrada ou não íntegra.

[Balanceamento de carga entre zonas](enable-disable-crosszone-lb.md)  
Se habilitado, o balanceador de carga roteia o tráfego de solicitações de forma uniforme em todas as instâncias, independentemente das zonas de disponibilidade.

[Modo de mitigação de dessincronização](config-desync-mitigation-mode.md)  
Determina como o balanceador de carga processa solicitações que possam representar risco de segurança para a sua aplicação. Os valores possíveis são `monitor`, `defensive` e `strictest`. O padrão é `defensive`.

[Intervalo ocioso](config-idle-timeout.md)  
Se habilitado, o balanceador de carga permite que as conexões permaneçam ociosas (nenhum dado é enviado pela conexão) pela duração especificada. O padrão é 60 segundos.

[Sessões persistentes](elb-sticky-sessions.md)  
Os Classic Load Balancers são compatíveis com a aderência de sessão baseada em aplicação e duração.Detalhes do balanceador de carga

[Grupos de segurança](elb-vpc-security-groups.md)  
Os grupos de segurança do balanceador de carga devem permitir tráfego nas portas do receptor e de verificação de integridade.

[Sub-redes](elb-manage-subnets.md)  
Você pode expandir a capacidade do seu balanceador de carga para sub-redes adicionais.

[Protocolo de proxy](enable-proxy-protocol.md)  
Se habilitado, adicionamos um cabeçalho com informações de conexão que são enviadas para a instância.

[Tags](add-remove-tags.md)  
É possível adicionar etiquetas para categorizar seus balanceadores de carga.

# Configurar o tempo limite de inatividade da conexão para seu Classic Load Balancer
<a name="config-idle-timeout"></a>

Para cada solicitação que um cliente faz por meio de um Classic Load Balancer, o balanceador de carga mantém duas conexões. A conexão front-end é entre o cliente e o load balancer. A conexão back-end é entre o load balancer e uma instância do EC2 registrada. O load balancer tem um período de tempo limite ocioso configurado que se aplica às suas conexões. Se nenhum dado tiver sido enviado ou recebido até o período que o tempo limite de inatividade terminar, o load balancer fechará a conexão. Para garantir que operações demoradas, como uploads de arquivo, tenham tempo para serem concluídas, envie pelo menos 1 byte de dados antes de decorrer cada período de tempo limite de inatividade e aumente a duração do período do tempo limite de inatividade conforme o necessário.

Se você usar listeners HTTP e HTTPS, recomendamos que ative a opção de keep-alive do HTTP para suas instâncias. Você pode habilitar a opção de keep-alive do nas configurações do servidor web para suas instâncias do O keep-alive, quando habilitado, permite que o load balancer reutilize conexões back-end até que o tempo limite de keep-alive expire. Para garantir que o load balancer é responsável por fechar as conexões com a instância, certifique-se de que o valor que você definiu no keep-alive do HTTP é maior do que a configuração de tempo limite de inatividade configurado para o load balancer.

Observe que os testes de keep-alive do TCP não impedem que o load balancer encerre a conexão, pois não enviam dados na payload.

**Topics**
+ [Configurar o tempo limite de inatividade usando o console](#config-idle-timeout-console)
+ [Configure o tempo limite de inatividade usando o AWS CLI](#config-idle-timeout-awscli)

## Configurar o tempo limite de inatividade usando o console
<a name="config-idle-timeout-console"></a>

Por padrão, o Elastic Load Balancing define o tempo limite de inatividade para o balanceador de carga como 60 segundos. Use o procedimento a seguir para definir um valor diferente para o tempo limite ocioso.

**Como ajustar a configuração de tempo limite de inatividade para um balanceador de carga usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Atributos**, escolha **Editar**.

1. Na página **Editar atributos do balanceador de carga**, na seção **Configuração de tráfego**, insira um valor para o **Tempo limite de inatividade**. O intervalo para o tempo limite de inatividade é de 1 a 4,000 segundos.

1. Escolha **Salvar alterações**.

## Configure o tempo limite de inatividade usando o AWS CLI
<a name="config-idle-timeout-awscli"></a>

Use o [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/modify-load-balancer-attributes.html)comando a seguir para definir o tempo limite de inatividade do seu balanceador de carga:

```
aws elb modify-load-balancer-attributes --load-balancer-name my-loadbalancer --load-balancer-attributes "{\"ConnectionSettings\":{\"IdleTimeout\":30}}"
```

Esta é uma resposta de exemplo:

```
{
    "LoadBalancerAttributes": {
        "ConnectionSettings": {
            "IdleTimeout": 30
        }
    }, 
    "LoadBalancerName": "my-loadbalancer"
}
```

# Configurar o balanceamento de carga entre zonas para seu Classic Load Balancer
<a name="enable-disable-crosszone-lb"></a>

Com o *balanceamento de carga entre zonas*, cada nó do balanceador de carga do seu Classic Load Balancer distribui solicitações uniformemente a todas as instâncias registradas em todas as zonas de disponibilidade habilitadas. Se o balanceamento de carga entre zonas estiver desabilitado, cada nó do balanceador de carga distribuirá solicitações uniformemente às instâncias registradas somente em sua zona de disponibilidade. Para mais informações, consulte [Balanceamento de carga entre zonas](https://docs.aws.amazon.com/elasticloadbalancing/latest/userguide/how-elastic-load-balancing-works.html#cross-zone-load-balancing) no *Manual do usuário do Elastic Load Balancing*.

O balanceamento de carga entre zonas reduz a necessidade de manter o número equivalente de instâncias em cada Zona de disponibilidade habilitada e melhora a capacidade de seu aplicativo de lidar com a perda de uma ou mais instâncias. No entanto, recomendamos ainda que você mantenha números aproximadamente equivalentes de instâncias em cada Zona de disponibilidade habilitada, para maior tolerância a falhas.

Para ambientes em que os clientes colocam pesquisas de DNS no cache, as solicitações de entrada podem favorecer uma das Zonas de disponibilidade. Usando o balanceamento de carga entre zonas, esse desequilíbrio na carga da solicitação será distribuído entre todas as instâncias disponíveis na região, reduzindo o impacto do mau comportamento de clientes.

Quando você cria um Classic Load Balancer, o padrão para balanceamento de carga entre zonas depende de como você cria o balanceador de carga. Com a API ou a CLI, o balanceamento de carga entre zonas é desativado por padrão. Com o Console de gerenciamento da AWS, a opção de ativar o balanceamento de carga entre zonas é selecionada por padrão. Depois de criar um Classic Load Balancer, você pode habilitar ou desabilitar o balanceamento de carga entre zonas a qualquer momento.

**Topics**
+ [Habilitar o balanceamento de carga entre zonas](#enable-cross-zone)
+ [Desabilitar o balanceamento de carga entre zonas](#disable-cross-zone)

## Habilitar o balanceamento de carga entre zonas
<a name="enable-cross-zone"></a>

Você pode habilitar o balanceamento de carga entre zonas para seu Classic Load Balancer a qualquer momento.

**Para ativar o balanceamento de carga entre zonas usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Atributos**, escolha **Editar**.

1. Na página **Editar atributos do balanceador de carga**, na seção **Configuração de roteamento da zona de disponibilidade**, habilite **Balanceamento de carga entre zonas**.

1. Escolha **Salvar alterações**.

**Para habilitar o balanceamento de carga entre zonas usando o AWS CLI**

1. Use o [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/modify-load-balancer-attributes.html)comando a seguir para definir o `CrossZoneLoadBalancing` atributo do seu balanceador de carga como`true`:

   ```
   aws elb modify-load-balancer-attributes --load-balancer-name my-loadbalancer --load-balancer-attributes "{\"CrossZoneLoadBalancing\":{\"Enabled\":true}}"
   ```

   Esta é uma resposta de exemplo:

   ```
   {
      "LoadBalancerAttributes": {
        "CrossZoneLoadBalancing": {
            "Enabled": true
          }
      },
      "LoadBalancerName": "my-loadbalancer"
    }
   ```

1. (Opcional) Use o [describe-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancer-attributes.html)comando a seguir para verificar se o balanceamento de carga entre zonas está ativado para seu balanceador de carga:

   ```
   aws elb describe-load-balancer-attributes --load-balancer-name my-loadbalancer
   ```

   Esta é uma resposta de exemplo:

   ```
   {
       "LoadBalancerAttributes": {
           "ConnectionDraining": {
               "Enabled": false, 
               "Timeout": 300
           }, 
           "CrossZoneLoadBalancing": {
               "Enabled": true
           }, 
           "ConnectionSettings": {
               "IdleTimeout": 60
           }, 
           "AccessLog": {
               "Enabled": false
           }
       }
   }
   ```

## Desabilitar o balanceamento de carga entre zonas
<a name="disable-cross-zone"></a>

Você pode desativar a opção de balanceamento de carga entre zonas para seu load balancer a qualquer momento.

**Para desativar o balanceamento de carga entre zonas usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Atributos**, escolha **Editar**.

1. Na página **Editar atributos do balanceador de carga**, na seção **Configuração de roteamento da zona de disponibilidade**, desabilite **Balanceamento de carga entre zonas**.

1. Escolha **Salvar alterações**.

Para desabilitar o balanceamento de carga entre zonas, defina o atributo `CrossZoneLoadBalancing` do seu load balancer como `false`.

**Para desativar o balanceamento de carga entre zonas usando o AWS CLI**

1. Use o seguinte comando [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/modify-load-balancer-attributes.html):

   ```
   aws elb modify-load-balancer-attributes --load-balancer-name my-loadbalancer --load-balancer-attributes "{\"CrossZoneLoadBalancing\":{\"Enabled\":false}}"
   ```

   Esta é uma resposta de exemplo:

   ```
   {
      "LoadBalancerAttributes": {
        "CrossZoneLoadBalancing": {
            "Enabled": false
          }
      },
      "LoadBalancerName": "my-loadbalancer"
    }
   ```

1. (Opcional) Use o [describe-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancer-attributes.html)comando a seguir para verificar se o balanceamento de carga entre zonas está desativado para seu balanceador de carga:

   ```
   aws elb describe-load-balancer-attributes --load-balancer-name my-loadbalancer
   ```

   Esta é uma resposta de exemplo:

   ```
   {
       "LoadBalancerAttributes": {
           "ConnectionDraining": {
               "Enabled": false, 
               "Timeout": 300
           }, 
           "CrossZoneLoadBalancing": {
               "Enabled": false
           }, 
           "ConnectionSettings": {
               "IdleTimeout": 60
           }, 
           "AccessLog": {
               "Enabled": false
           }
       }
   }
   ```

# Configurar a descarga da conexão para seu Classic Load Balancer
<a name="config-conn-drain"></a>

Para garantir que o Classic Load Balancer interromperá o envio de solicitações para instâncias cujo registro está sendo cancelado ou que não sejam íntegras, mantendo as conexões existentes abertas, use a *descarga da conexão*. Isso permite que o load balancer conclua as solicitações em trânsito feitas para instâncias cujo registro está sendo cancelado ou que não estejam íntegras.

Quando você habilitar a drenagem de conexão, poderá especificar um tempo máximo para o load balancer manter as conexões ativas antes de relatar a instância como registro cancelado. O valor de tempo limite máximo pode ser definido entre 1 e 3.600 segundos (o padrão é 300 segundos). Quando o tempo limite máximo for atingido, o load balancer forçosamente fechará as conexões para a instância de cancelamento do registro.

Se uma instância de cancelamento de registro não tiver solicitações em trânsito nem conexões ativas, o Elastic Load Balancing concluirá imediatamente o processo de cancelamento de registro.

Embora as solicitações em andamento estejam sendo atendidas, o load balancer relata o estado de uma instância de cancelamento de registro como `InService: Instance deregistration currently in progress`. Quando o cancelamento do registro da instância terminar de atender a todas as solicitações em andamento, ou quando o tempo limite máximo for atingido, o load balancer informará o estado da instância como `OutOfService: Instance is not currently registered with the LoadBalancer`.

Se uma instância deixar de ser íntegra, o load balancer reportará o estado da instância como `OutOfService`. Se houver solicitações em andamento feitas à instância não íntegra, elas serão concluídas. O tempo limite máximo não se aplica a conexões para instâncias com problemas de integridade.

Se suas instâncias fizerem parte de um grupo do Auto Scaling e a descarga da conexão estiver habilitada para o seu balanceador de carga, o Auto Scaling aguardará as solicitações em andamento serem concluídas ou o tempo limite máximo expirar antes de terminar as instâncias por causa de um evento de escalabilidade ou uma substituição de verificação de integridade.

Você pode desativar a drenagem da conexão se quiser que seu load balancer feche imediatamente as conexões para as instâncias que estiverem cancelando ou registro ou que ficaram não íntegras. Quando a drenagem da conexão estiver desativada, quaisquer solicitações em andamento feitas às instâncias que estiverem cancelando o registro ou não ficaram íntegras não serão concluídas.

**Topics**
+ [Habilitar a descarga da conexão](#enable-conn-drain)
+ [Desabilitar a descarga da conexão](#disable-conn-drain)

## Habilitar a descarga da conexão
<a name="enable-conn-drain"></a>

Você pode ativar a drenagem de conexão para seu load balancer a qualquer momento.

**Para habilitar a drenagem de conexão usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Atributos**, escolha **Editar**.

1. Na página **Editar atributos do balanceador de carga**, na seção **Configuração de tráfego**, selecione **Habilitar drenagem da conexão**.

1. (Opcional) Em **Tempo limite (intervalo de drenagem)**, digite um valor entre 1 e 3.600 segundos. Caso contrário, o padrão de 300 segundos será usado.

1. Escolha **Salvar alterações**.

**Para ativar a drenagem da conexão usando o AWS CLI**  
Use o seguinte comando [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/modify-load-balancer-attributes.html):

```
aws elb modify-load-balancer-attributes --load-balancer-name my-loadbalancer --load-balancer-attributes "{\"ConnectionDraining\":{\"Enabled\":true,\"Timeout\":300}}"
```

Esta é uma resposta de exemplo:

```
{
    "LoadBalancerAttributes": {
        "ConnectionDraining": {
            "Enabled": true, 
            "Timeout": 300
        }
    }, 
    "LoadBalancerName": "my-loadbalancer"
}
```

## Desabilitar a descarga da conexão
<a name="disable-conn-drain"></a>

Você pode desabilitar a drenagem de conexão para seu load balancer a qualquer momento.

**Para desabilitar a drenagem de conexão usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Atributos**, escolha **Editar**.

1. Na página **Editar atributos do balanceador de carga** , na seção **Configuração de tráfego** , desmarque **Habilitar drenagem da conexão**.

1. Escolha **Salvar alterações**.

**Para desativar a drenagem da conexão usando o AWS CLI**  
Use o seguinte comando [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/modify-load-balancer-attributes.html):

```
aws elb modify-load-balancer-attributes --load-balancer-name my-loadbalancer --load-balancer-attributes "{\"ConnectionDraining\":{\"Enabled\":false}}"
```

Esta é uma resposta de exemplo:

```
{
    "LoadBalancerAttributes": {
        "ConnectionDraining": {
            "Enabled": false, 
            "Timeout": 300
        }
    }, 
    "LoadBalancerName": "my-loadbalancer"
}
```

# Configurar sessões persistentes para seu Classic Load Balancer
<a name="elb-sticky-sessions"></a>

Por padrão, um Classic Load Balancer roteia cada solicitação de forma independente para a instância registrada com a menor carga. No entanto, você pode usar o recurso *sticky session* (também conhecida como *afinidade de sessão*), que permite que o load balancer vincule a sessão de um usuário a uma instância específica. Isso garante que todas as solicitações do usuário durante a sessão sejam enviadas para a mesma instância.

O segredo para o gerenciamento de sticky sessions é determinar por quanto tempo o load balancer deve rotear consistentemente a solicitação do usuário para a mesma instância. Se sua aplicação tiver seu próprio cookie de sessão, você pode configurar o Elastic Load Balancing de forma que o cookie da sessão acompanhe a duração especificada pelo cookie de sessão da aplicação. Se sua aplicação não tiver seu próprio cookie de sessão, você pode configurar o Elastic Load Balancing para criar um cookie de sessão ao especificar sua própria duração de persistência.

O Elastic Load Balancing cria um cookie, chamado AWSELB, que é usado para mapear a sessão para a instância.

**Requisitos**
+ Um HTTP/HTTPS balanceador de carga.
+ Pelo menos uma instância íntegra em cada Zona de disponibilidade.

**Compatibilidade**
+ A RFC para a propriedade do caminho de um cookie permite sublinhados. No entanto, o URI do Elastic Load Balancing codifica caracteres sublinhados como `%5F`, pois alguns navegadores, como o Internet Explorer 7, esperam que os sublinhados sejam codificados no URI como `%5F`. Por causa do possível impacto a navegadores que estejam funcionando no momento, o Elastic Load Balancing continuará a codificar em URI os caracteres sublinhados. Por exemplo, se o cookie tiver a propriedade `path=/my_path`, o Elastic Load Balancing mudará essa propriedade na solicitação encaminhada para `path=/my%5Fpath`.
+ Você não pode definir o sinalizador `secure` ou o sinalizador `HttpOnly` nos cookies de perdurabilidade da sessão baseado na duração. No entanto, esses cookies não contêm dados confidenciais. Observe que, se você definir o `secure` sinalizador ou `HttpOnly` sinalizador em um cookie de aderência de sessão controlado pelo aplicativo, ele também será definido no cookie. AWSELB 
+ Se você tiver um ponto-e-vírgula no final no campo `Set-Cookie` de um cookie do aplicativo, o load balancer ignorará o cookie.

**Topics**
+ [Persistência da sessão com base na duração](#enable-sticky-sessions-duration)
+ [Persistência da sessão controlada pela aplicação](#enable-sticky-sessions-application)

## Persistência da sessão com base na duração
<a name="enable-sticky-sessions-duration"></a>

O balanceador de carga usa um cookie especial, AWSELB, para rastrear a instância de cada solicitação para cada ouvinte. Quando o load balancer receber uma solicitação, ele primeiro verificará se esse cookie está presente na solicitação. Se estiver, a solicitação será enviada para a instância especificada no cookie. Se não houver um cookie, o load balancer selecionará uma instância com base no algoritmo de balanceamento de carga existente. Um cookie é inserido na resposta para vincular solicitações subsequentes do mesmo usuário para essa instância. A configuração da política de perdurabilidade define a expiração de um cookie, que estabelece a validade de cada cookie. O load balancer não atualiza o tempo de expiração do cookie e não verifica se o cookie expirou antes de usá-lo. Após um cookie expirar, a sessão não será mais sticky. O cliente deve remover o cookie do armazenamento de cookies após a expiração.

Com solicitações de CORS (cross-origin resource sharing, compartilhamento de recursos de origem cruzada), alguns navegadores exigem `SameSite=None; Secure` para habilitar a perdurabilidade. Nesse caso, o Elastic Load Balancing cria um segundo cookie de aderência AWSELBCORS, que inclui as mesmas informações do cookie de aderência original mais esse atributo. `SameSite` Os clientes recebem ambos os cookies.

Se uma instância falhar ou ficar não deixar de ser íntegra, o load balancer interromperá as solicitações de roteamento para essa instância e escolherá uma nova instância íntegra com base no algoritmo de balanceamento de carga existente. A solicitação é roteada para a nova instância como se não houvesse cookie e a sessão não for mais perdurável.

Se um cliente mudar para um listener com uma porta de back-end diferente, a perdurabilidade será perdida.

**Para habilitar sticky sessions com base na duração para um load balancer usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Receptores**, escolha **Gerenciar receptores**.

1. Na página **Gerenciar receptores**, localize o receptor a ser atualizado e escolha **Editar** em **Durabilidade do cookie**.

1. No pop-up **Editar configuração de perdurabilidade de cookies**, selecione **Gerado pelo balanceador de carga**.

1. (Opcional) Em **Período de expiração**, digite o período de expiração do cookie, em segundos. Se você não especificar um período de expiração, a sticky session durará por toda a sessão do navegador.

1. Escolha **Salvar alterações** para fechar a janela pop-up.

1. Escolha **Salvar alterações** para retornar à página de detalhes do balanceador de carga.

**Para habilitar sessões fixas com base na duração para um balanceador de carga usando o AWS CLI**

1. Use o comando [create-lb-cookie-stickiness-policy](https://docs.aws.amazon.com/cli/latest/reference/elb/create-lb-cookie-stickiness-policy.html) a seguir para criar uma política de aderência de cookies gerada pelo balanceador de carga com um período de expiração de cookies de 60 segundos:

   ```
   aws elb create-lb-cookie-stickiness-policy --load-balancer-name my-loadbalancer --policy-name my-duration-cookie-policy --cookie-expiration-period 60
   ```

1. Use o seguinte comando [set-load-balancer-policies-of-listener](https://docs.aws.amazon.com/cli/latest/reference/elb/set-load-balancer-policies-of-listener.html) para ativar a aderência da sessão para o balanceador de carga especificado:

   ```
   aws elb set-load-balancer-policies-of-listener --load-balancer-name my-loadbalancer --load-balancer-port 443 --policy-names my-duration-cookie-policy
   ```
**nota**  
O comando `set-load-balancer-policies-of-listener` substitui o conjunto atual de políticas associado à porta especificada do load balancer. Sempre que você usar esse comando, especifique a opção `--policy-names` para listar todas as políticas a serem habilitadas.

1. (Opcional) Use o [describe-load-balancers](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancers.html)comando a seguir para verificar se a política está habilitada:

   ```
   aws elb describe-load-balancers --load-balancer-name my-loadbalancer
   ```

   A resposta inclui as informações a seguir, que mostram que a política está ativada para o listener na porta especificada:

   ```
   {
       "LoadBalancerDescriptions": [
           {
               ...
               "ListenerDescriptions": [
                   {
                       "Listener": {
                           "InstancePort": 443, 
                           "SSLCertificateId": "arn:aws:iam::123456789012:server-certificate/my-server-certificate", 
                           "LoadBalancerPort": 443, 
                           "Protocol": "HTTPS", 
                           "InstanceProtocol": "HTTPS"
                       }, 
                       "PolicyNames": [
                           "my-duration-cookie-policy", 
                           "ELBSecurityPolicy-TLS-1-2-2017-01"
                       ]
                   },
                   ...
               ],            
               ...
               "Policies": {
                   "LBCookieStickinessPolicies": [
                    {
                           "PolicyName": "my-duration-cookie-policy", 
                           "CookieExpirationPeriod": 60
                       }
   
                   ], 
                   "AppCookieStickinessPolicies": [], 
                   "OtherPolicies": [
                       "ELBSecurityPolicy-TLS-1-2-2017-01"
                   ]
               },
               ...
           }
       ]
   }
   ```

## Persistência da sessão controlada pela aplicação
<a name="enable-sticky-sessions-application"></a>

O load balancer usa um cookie especial para associar a sessão com a instância que lidou com a solicitação inicial, mas segue a vida do cookie do aplicativo especificado na configuração da política. O load balancer só inserirá um novo cookie de perdurabilidade se a resposta do aplicativo incluir um novo cookie do aplicativo. O cookie de perdurabilidade do load balancer não será atualizado com cada solicitação. Se o cookie for explicitamente removido ou expirar, a sessão deixará de ser perdurável até ser emitido um novo cookie do aplicativo.

Os seguintes atributos definidos por instâncias back-end são enviados para clientes no cookie: `path`, `port`, `domain`, `secure`, `httponly`, `discard`, `max-age`, `expires`, `version`, `comment`, `commenturl` e `samesite`.

Se uma instância falhar ou ficar não deixar de ser íntegra, o load balancer interromperá as solicitações de roteamento para essa instância e escolherá uma nova instância íntegra com base no algoritmo de balanceamento de carga existente. O load balancer trata a sessão agora como "grudada" à nova instância íntegra e continua a rotear solicitações para essa instância, mesmo se a instância falha retornar.

**Para habilitar a perdurabilidade da sessão controlada por aplicativo usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Receptores**, escolha **Gerenciar receptores**.

1. Na página **Gerenciar receptores**, localize o receptor a ser atualizado e escolha **Editar** em **Durabilidade do cookie**.

1. Selecione **Gerado pela aplicação**.

1. Em **Nome de cookie**, digite o nome do cookie do aplicativo.

1. Escolha **Salvar alterações**.

**Para ativar a aderência da sessão controlada pelo aplicativo usando o AWS CLI**

1. Use o seguinte comando [create-app-cookie-stickiness-policy](https://docs.aws.amazon.com/cli/latest/reference/elb/create-app-cookie-stickiness-policy.html) para criar uma política de aderência de cookies gerada pelo aplicativo:

   ```
   aws elb create-app-cookie-stickiness-policy --load-balancer-name my-loadbalancer --policy-name my-app-cookie-policy --cookie-name my-app-cookie
   ```

1. Use o seguinte comando [set-load-balancer-policies-of-listener](https://docs.aws.amazon.com/cli/latest/reference/elb/set-load-balancer-policies-of-listener.html) para ativar a aderência da sessão para um balanceador de carga:

   ```
   aws elb set-load-balancer-policies-of-listener --load-balancer-name my-loadbalancer --load-balancer-port 443 --policy-names my-app-cookie-policy
   ```
**nota**  
O comando `set-load-balancer-policies-of-listener` substitui o conjunto atual de políticas associado à porta especificada do load balancer. Sempre que você usar esse comando, especifique a opção `--policy-names` para listar todas as políticas a serem habilitadas.

1. (Opcional) Use o [describe-load-balancers](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancers.html)comando a seguir para verificar se a política fixa está habilitada:

   ```
   aws elb describe-load-balancers --load-balancer-name my-loadbalancer
   ```

1. A resposta inclui as informações a seguir, que mostram que a política está ativada para o listener na porta especificada:

   ```
   {
       "LoadBalancerDescriptions": [
           {
               ...
               "ListenerDescriptions": [
                   {
                       "Listener": {
                           "InstancePort": 443, 
                           "SSLCertificateId": "arn:aws:iam::123456789012:server-certificate/my-server-certificate", 
                           "LoadBalancerPort": 443, 
                           "Protocol": "HTTPS", 
                           "InstanceProtocol": "HTTPS"
                       }, 
                       "PolicyNames": [
                           "my-app-cookie-policy",  
                           "ELBSecurityPolicy-TLS-1-2-2017-01"
                       ]
                   }, 
                   {
                       "Listener": {
                           "InstancePort": 80, 
                           "LoadBalancerPort": 80, 
                           "Protocol": "TCP", 
                           "InstanceProtocol": "TCP"
                       }, 
                       "PolicyNames": []
                   }
               ],
               ...
               "Policies": {
                   "LBCookieStickinessPolicies": [], 
                   "AppCookieStickinessPolicies": [
                   {
                           "PolicyName": "my-app-cookie-policy", 
                           "CookieName": "my-app-cookie"
                       }
   
                   ], 
                   "OtherPolicies": [
                       "ELBSecurityPolicy-TLS-1-2-2017-01" 
                   ]
               }, 
               ...
           }
       ]
   }
   ```

# Configurar o modo de mitigação de dessincronização para o Classic Load Balancer
<a name="config-desync-mitigation-mode"></a>

O modo de mitigação de dessincronização protege sua aplicação contra problemas causados por HTTP Desync. O balanceador de carga classifica cada solicitação com base em seu nível de ameaça, permite solicitações seguras e, em seguida, reduz o risco, conforme instruído pelo modo de mitigação especificado. Os modos de mitigação de dessincronização são: monitor (monitorado), defensive (defensivo) e strictest (mais rigoroso). O padrão é o modo defensivo, que fornece mitigação durável contra HTTP Desync, mantendo a disponibilidade da sua aplicação. Você pode alternar para o modo mais restrito a fim de garantir que sua aplicação receba somente solicitações que estejam em conformidade com a RFC 7230.

A biblioteca http\$1desync\$1guardian analisa solicitações HTTP para evitar ataques de HTTP Desync. Para obter mais informações, consulte [HTTP Desync Guardian](https://github.com/aws/http-desync-guardian) no github.

**Topics**
+ [Classificações](#desync-mitigation-classification)
+ [Modos](#desync-mitigation-modes)
+ [Modificar o modo de mitigação de dessincronização](#update-desync-mitigation-mode)

**dica**  
Essa configuração se aplica somente aos balanceadores de carga clássicos. Para obter informações que se aplicam aos balanceadores de carga da aplicação, consulte [Modo de mitigação de dessincronização para balanceadores de carga da aplicação](https://docs.aws.amazon.com/elasticloadbalancing/latest/application/application-load-balancers.html#desync-mitigation-mode).

## Classificações
<a name="desync-mitigation-classification"></a>

As classificações são as seguintes:
+ Compatível: a solicitação está em conformidade com o RFC 7230 e não representa ameaças de segurança conhecidas.
+ Aceitável: a solicitação não está em conformidade com o RFC 7230, mas não representa ameaças de segurança conhecidas.
+ Ambígua: a solicitação não está em conformidade com o RFC 7230, mas representa um risco, pois vários servidores Web e proxies podem lidar com ela de formas diferentes.
+ Grave: a solicitação representa um alto risco de segurança. O balanceador de carga bloqueia a solicitação, atende uma resposta 400 ao cliente e fecha a conexão do cliente.

As listas a seguir descrevem os problemas para cada classificação.

**Aceitável**
+ Um cabeçalho contém um caractere não ASCII ou de controle.
+ A versão de solicitação contém um valor incorreto.
+ Há um cabeçalho Content-Length (Comprimento de conteúdo) com um valor de 0 para uma solicitação GET ou HEAD.
+ O URI de solicitação contém um espaço que não é codificado por URL.

**Ambíguo**
+ O URI de solicitação contém caracteres de controle.
+ A solicitação contém um cabeçalho Transfer-Coding (Codificação de transferência) e um cabeçalho Content-Length (Comprimento de conteúdo).
+ Há vários cabeçalhos Content-Length (Comprimento de conteúdo) com o mesmo valor.
+ Um cabeçalho está vazio ou há uma linha com apenas espaços.
+ Há um cabeçalho que pode ser normalizado para Transfer-Enconding (Codificação de transferência) ou Content-Length (Comprimento de conteúdo) usando técnicas comuns de normalização de texto. 
+ Há um cabeçalho Content-Length (Comprimento de conteúdo) para uma solicitação GET ou HEAD.
+ Há um cabeçalho Transfer-Encoding (Codificação de transferência) para uma solicitação GET ou HEAD.

**Grave**
+ O URI de solicitação contém um caractere nulo ou retorno de carro.
+ O cabeçalho Content-Length (Comprimento de conteúdo) contém um valor que não pode ser analisado ou não é um número válido.
+ Um cabeçalho contém um caractere nulo ou retorno de carro.
+ O cabeçalho Transfer-Encoding (Codificação de transferência) contém um valor inválido.
+ O método de solicitação está malformado.
+ A versão da solicitação está malformada.
+ Há vários cabeçalhos Content-Length (Comprimento de conteúdo) com valores diferentes.
+ Há vários cabeçalhos Transfer-Coding (Codificação de transferência): cabeçalhos em bloco.

Se uma solicitação não estiver em conformidade com o RFC 7230, o balanceador de carga incrementará a métrica `DesyncMitigationMode_NonCompliant_Request_Count`. Para obter mais informações, consulte [Métricas do Classic Load Balancer](elb-cloudwatch-metrics.md#loadbalancing-metrics-clb).

## Modos
<a name="desync-mitigation-modes"></a>

A tabela a seguir descreve como os balanceadores de carga clássicos tratam solicitações com base no modo e na classificação.


| Classificação | Modo monitorado | Modo defensivo | Modo mais restrito | 
| --- | --- | --- | --- | 
| Compatível | Permitido | Permitido | Permitido | 
| Aceitável | Permitido | Permitido | Bloqueado | 
| Ambíguo | Permitido | Permitido¹ | Bloqueado | 
| Grave | Permitido | Bloqueado | Bloqueado | 

¹ Encaminha as solicitações, mas fecha as conexões entre cliente e destino.

## Modificar o modo de mitigação de dessincronização
<a name="update-desync-mitigation-mode"></a>

**Para atualizar o modo de mitigação de dessincronização usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Atributos**, escolha **Editar**.

1. Na página **Editar atributos do balanceador de carga**, em **Configuração de tráfego**, escolha **Defensivo (recomendado)**, **Mais estrito**, ou **Monitorar**.

1. Escolha **Salvar alterações**.

**Para atualizar o modo de mitigação de dessincronização usando o AWS CLI**  
Use o [modify-load-balancer-attributes](https://docs.aws.amazon.com/cli/latest/reference/elb/modify-load-balancer-attributes.html)comando com o `elb.http.desyncmitigationmode` atributo definido como `monitor``defensive`, ou`strictest`.

```
aws elb modify-load-balancer-attributes --load-balancer-name my-load-balancer --load-balancer-attributes file://attribute.json
```

Veja a seguir o conteúdo de `attribute.json`.

```
{
    "AdditionalAttributes": [
        {
            "Key": "elb.http.desyncmitigationmode",
            "Value": "strictest"
        }
    ]
}
```

# Configurar o protocolo de proxy para o Classic Load Balancer
<a name="enable-proxy-protocol"></a>

O protocolo de proxy é um protocolo de Internet usado para transportar informações de conexão da origem que solicita a conexão ao destino ao qual a conexão foi solicitada. O Elastic Load Balancing usa o protocolo de proxy versão 1, que usa um formato de cabeçalho legível por humanos.

Por padrão, quando você usa o Transmission Control Protocol (TCP) para conexões front-end e backend, o Classic Load Balancer encaminha solicitações para as instâncias sem modificar os cabeçalhos de solicitação. Se você habilitar o protocolo de proxy, um cabeçalho legível por humanos será adicionado ao cabeçalho de solicitação com informações de conexão, como o endereço IP de origem, endereço IP de destino e números de portas. O cabeçalho, então, será enviado à instância como parte da solicitação.

**nota**  
O Console de gerenciamento da AWS não suporta a ativação do protocolo proxy.

**Topics**
+ [Cabeçalho do protocolo de proxy](#proxy-protocol)
+ [Pré-requisitos para habilitar o protocolo de proxy](#proxy-protocol-prerequisites)
+ [Ative o protocolo proxy usando o AWS CLI](#enable-proxy-protocol-cli)
+ [Desative o protocolo proxy usando o AWS CLI](#proxy-protocol-disable-policy-cli)

## Cabeçalho do protocolo de proxy
<a name="proxy-protocol"></a>

O cabeçalho do protocolo de proxy ajuda você a identificar o endereço IP de um cliente quando você tiver um balanceador de carga que usa TCP para conexões backend. Como os load balancers interceptam tráfego entre clientes e suas instâncias, os logs de acesso da sua instância contêm o endereço IP do load balancer em vez do cliente de origem. Você pode analisar a primeira linha da solicitação para recuperar o endereço IP do cliente e o número da porta.

O endereço do proxy no cabeçalho de IPv6 é o IPv6 endereço público do seu balanceador de carga. Esse IPv6 endereço corresponde ao endereço IP que é resolvido a partir do nome DNS do seu balanceador de carga, que começa com ou`ipv6`. `dualstack` Se o cliente se conectar com IPv4, o endereço do proxy no cabeçalho será o IPv4 endereço privado do balanceador de carga, que não pode ser resolvido por meio de uma pesquisa de DNS.

A linha do protocolo de proxy é uma única linha que termina com um retorno de carro e feed de linha (`"\r\n"`) e tem o seguinte formato:

```
PROXY_STRING + single space + INET_PROTOCOL + single space + CLIENT_IP + single space + PROXY_IP + single space + CLIENT_PORT + single space + PROXY_PORT + "\r\n"
```

**Exemplo: IPv4.**  
Veja a seguir um exemplo da linha de protocolo proxy para IPv4.

```
PROXY TCP4 198.51.100.22 203.0.113.7 35646 80\r\n
```

## Pré-requisitos para habilitar o protocolo de proxy
<a name="proxy-protocol-prerequisites"></a>

Antes de começar, faça o seguinte:
+ Confirme se o balanceador de carga não está por trás de um servidor de proxy com o protocolo de proxy habilitado. Se o protocolo de proxy estiver habilitado tanto no servidor de proxy quanto no balanceador de carga, este adicionará outro cabeçalho à solicitação, que já tem um cabeçalho do servidor de proxy. Dependendo de como sua instância estiver configurada, essa duplicação poderá resultar em erros.
+ Confirme se suas instâncias podem processar as informações do protocolo de proxy.
+ Confirme se as configurações do seu listener são compatíveis com o protocolo de proxy. Para obter mais informações, consulte [Configurações do listener para balanceadores de carga clássicos](using-elb-listenerconfig-quickref.md).

## Ative o protocolo proxy usando o AWS CLI
<a name="enable-proxy-protocol-cli"></a>

Para habilitar o protocolo de proxy, você precisa criar uma política do tipo `ProxyProtocolPolicyType` e, em seguida, habilitar a política na porta da instância.

Use o procedimento a seguir para criar uma nova política para o load balancer do tipo `ProxyProtocolPolicyType`, definir a política recém-criada para a instância na porta `80` e verificar se a política está ativada.

**Para habilitar o Proxy Protocol para o load balancer**

1. (Opcional) Use o seguinte comando [describe-load-balancer-policy-types](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancer-policy-types.html) para listar as políticas suportadas pelo Elastic Load Balancing:

   ```
   aws elb describe-load-balancer-policy-types
   ```

   A resposta inclui os nomes e as descrições dos tipos de política suportados. A tabela a seguir mostra a saída para o tipo `ProxyProtocolPolicyType`:

   ```
   {
       "PolicyTypeDescriptions": [
           ...
           {
               "PolicyAttributeTypeDescriptions": [
                   {
                       "Cardinality": "ONE",
                       "AttributeName": "ProxyProtocol",
                       "AttributeType": "Boolean"
                   }
               ],
               "PolicyTypeName": "ProxyProtocolPolicyType",
               "Description": "Policy that controls whether to include the IP address and port of the originating 
   request for TCP messages. This policy operates on TCP/SSL listeners only"
           },
           ...
       ]
   }
   ```

1. Use o [create-load-balancer-policy](https://docs.aws.amazon.com/cli/latest/reference/elb/create-load-balancer-policy.html)comando a seguir para criar uma política que habilite o protocolo proxy:

   ```
   aws elb create-load-balancer-policy --load-balancer-name my-loadbalancer --policy-name my-ProxyProtocol-policy --policy-type-name ProxyProtocolPolicyType --policy-attributes AttributeName=ProxyProtocol,AttributeValue=true
   ```

1. Use o seguinte for-backend-server comando [set-load-balancer-policies-](https://docs.aws.amazon.com/cli/latest/reference/elb/set-load-balancer-policies-for-backend-server.html) para habilitar a política recém-criada na porta especificada. Observe que esse comando substitui o conjunto atual de políticas habilitadas. Portanto, a opção `--policy-names` deve especificar tanto a política que você está adicionando à lista (por exemplo, `my-ProxyProtocol-policy`) quanto quaisquer políticas que estejam atualmente habilitadas (por exemplo, `my-existing-policy`).

   ```
   aws elb set-load-balancer-policies-for-backend-server --load-balancer-name my-loadbalancer --instance-port 80 --policy-names my-ProxyProtocol-policy my-existing-policy
   ```

1. (Opcional) Use o [describe-load-balancers](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancers.html)comando a seguir para verificar se o protocolo proxy está ativado:

   ```
   aws elb describe-load-balancers --load-balancer-name my-loadbalancer
   ```

   A resposta inclui as informações a seguir, que mostra que a política `my-ProxyProtocol-policy` está associada com a porta `80`.

   ```
   {
       "LoadBalancerDescriptions": [
           {
               ...
               "BackendServerDescriptions": [
                   {
                       "InstancePort": 80, 
                       "PolicyNames": [
                           "my-ProxyProtocol-policy"
                       ]
                   }
               ], 
               ...
           }
       ]
   }
   ```

## Desative o protocolo proxy usando o AWS CLI
<a name="proxy-protocol-disable-policy-cli"></a>

Você pode desativar as políticas associadas à sua instância e, em seguida, habilitá-las posteriormente.

**Para desabilitar a política do protocolo de proxy**

1. Use o seguinte for-backend-server comando [set-load-balancer-policies-](https://docs.aws.amazon.com/cli/latest/reference/elb/set-load-balancer-policies-for-backend-server.html) para desativar a política do protocolo proxy omitindo-a da `--policy-names` opção, mas incluindo as outras políticas que devem permanecer habilitadas (por exemplo,`my-existing-policy`).

   ```
   aws elb set-load-balancer-policies-for-backend-server --load-balancer-name my-loadbalancer --instance-port 80 --policy-names my-existing-policy
   ```

   Se não houver outras políticas para habilitar, especifique uma string vazia com a opção `--policy-names`, da seguinte forma:

   ```
   aws elb set-load-balancer-policies-for-backend-server --load-balancer-name my-loadbalancer --instance-port 80 --policy-names "[]"
   ```

1. (Opcional) Use o [describe-load-balancers](https://docs.aws.amazon.com/cli/latest/reference/elb/describe-load-balancers.html)comando a seguir para verificar se a política está desativada:

   ```
   aws elb describe-load-balancers --load-balancer-name my-loadbalancer
   ```

   A resposta inclui as informações a seguir, que mostram que nenhuma porta está associada com uma política.

   ```
   {
       "LoadBalancerDescriptions": [
           {
               ...
               "BackendServerDescriptions": [],
               ...
           }
       ]
   }
   ```

# Colocar uma marcação em seu Classic Load Balancer
<a name="add-remove-tags"></a>

As tags ajudam a categorizar seus load balancers de diferentes formas, como por finalidade, por proprietário ou por ambiente.

Você pode adicionar várias marcações a cada Classic Load Balancer. As chaves de tag devem ser exclusivas de cada load balancer. Se você adicionar uma tag com uma chave que já esteja associada ao load balancer, o valor dessa tag será atualizado.

Quando você terminar com uma tag, poderá removê-la do seu load balancer.

**Topics**
+ [Restrições de tags](#tag-restrictions)
+ [Adicionar uma tag](#add-tags)
+ [Remover uma marcação](#remove-tags)

## Restrições de tags
<a name="tag-restrictions"></a>

As restrições básicas a seguir se aplicam a tags:
+ Número máximo de tags por recurso: 50
+ Comprimento máximo da chave: 127 caracteres Unicode
+ Comprimento máximo de valor: 255 caracteres Unicode
+ As chaves e valores das tags diferenciam maiúsculas de minúsculas. Os caracteres permitidos são letras, espaços e números representáveis em UTF-8, além dos seguintes caracteres especiais: \$1 - = . \$1 : / @. Não use espaços no início nem no fim.
+ Não use o `aws:` prefixo nos nomes ou valores das tags porque ele está reservado para AWS uso. Você não pode editar nem excluir nomes ou valores de tag com esse prefixo. As tags com esse prefixo não contam para as tags por limite de recurso. 

## Adicionar uma tag
<a name="add-tags"></a>

Você pode adicionar tags ao seu load balancer a qualquer momento.

**Para adicionar uma tag usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Tags**, selecione **Gerenciar tags**.

1. Na página **Gerenciar tags**, para cada tag, escolha **Adicionar nova tag** e especifique uma chave e um valor.

1. Ao terminar de adicionar tags, escolha **Salvar alterações**.

**Para adicionar uma tag usando o AWS CLI**  
Use o comando [add-tags](https://docs.aws.amazon.com/cli/latest/reference/elb/add-tags.html) para adicionar a tag especificada:

```
aws elb add-tags --load-balancer-name my-loadbalancer --tag "Key=project,Value=lima"
```

## Remover uma marcação
<a name="remove-tags"></a>

Você pode remover as tags do seu load balancer sempre que terminar de usá-lo.

**Para remover uma tag usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Tags**, selecione **Gerenciar tags**.

1. Na página **Gerenciar tags**, escolha **Remover** ao lado de cada tag que você deseja remover.

1. Ao terminar de remover tags, escolha **Salvar alterações**.

**Para remover uma tag usando o AWS CLI**  
Use o comando [remove-tags](https://docs.aws.amazon.com/cli/latest/reference/elb/remove-tags.html) para remover a tag com a chave especificada:

```
aws elb remove-tags --load-balancer-name my-loadbalancer --tag project
```

# Configurar sub-redes para o Classic Load Balancer
<a name="elb-manage-subnets"></a>

Quando você adiciona uma sub-rede ao balanceador de carga, o Elastic Load Balancing cria um nó de balanceador de carga na zona de disponibilidade. Os nós do load balancer aceitam o tráfego dos clientes e encaminham as solicitações para suas instâncias registradas íntegras em uma ou mais Zonas de disponibilidade. Recomendamos que você adicione uma sub-rede por zona de disponibilidade para pelo menos duas zonas de disponibilidade. Isso aprimora a disponibilidade do seu load balancer. Observe que você pode modificar as sub-redes para seu load balancer a qualquer momento.

Selecione sub-redes nas mesmas Zonas de disponibilidade como suas instâncias. Se o balanceador de carga for um balanceador voltado para a Internet, você deverá selecionar sub-redes públicas para que suas instâncias backend recebam tráfego do balanceador de carga (mesmo se as instâncias backend estiverem em sub-redes privadas). Se o load balancer for interno, recomendamos que você selecione sub-redes privadas. Para obter mais informações sobre sub-redes para seu load balancer, consulte [Recomendações para sua VPC](elb-backend-instances.md#set-up-ec2).

Para adicionar uma sub-rede, registre as instâncias na zona de disponibilidade com o balanceador de carga, depois anexe uma sub-rede dessa zona de disponibilidade ao balanceador de carga. Para obter mais informações, consulte [Registrar instâncias no Classic Load Balancer](elb-deregister-register-instances.md).

Depois de adicionar uma sub-rede, o load balancer iniciará rotear solicitações às instâncias registradas na Zona de disponibilidade correspondente. Por padrão, o load balancer roteia solicitações uniformemente entre as Zonas de disponibilidade para suas sub-redes. Para rotear as solicitações uniformemente entre as instâncias registradas nas Zonas de disponibilidade para suas sub-redes, habilite o balanceamento de carga entre zonas. Para obter mais informações, consulte [Configurar o balanceamento de carga entre zonas para seu Classic Load Balancer](enable-disable-crosszone-lb.md).

Você pode remover uma sub-rede do seu load balancer temporariamente quando sua Zona de disponibilidade não tiver instâncias íntegras registradas ou quando você deseja solucionar problemas ou atualizar as instâncias registradas. Depois que você remover uma sub-rede, o load balancer interromperá o roteamento das solicitações para as instâncias registradas nessa Zona de disponibilidade, mas continuará a rotear as solicitações para as instâncias registradas das Zonas de disponibilidade das sub-redes restantes. Observe que, depois de remover uma sub-rede, as instâncias nessa sub-rede permanecerão registradas no balanceador de carga, mas você pode cancelar o registro delas se desejar. Para obter mais informações, consulte [Registrar instâncias no Classic Load Balancer](elb-deregister-register-instances.md).

**Topics**
+ [Requisitos](#elb-subnet-requirements)
+ [Configurar sub-redes usando o console](#add-remove-subnets-console)
+ [Configurar sub-redes usando a CLI](#add-remove-subnets-cli)

## Requisitos
<a name="elb-subnet-requirements"></a>

Quando você atualizar as sub-redes para seu load balancer, deverá cumprir os seguintes requisitos:
+ O load balancer deve ter no mínimo uma sub-rede em todos os momentos.
+ Você pode adicionar no máximo uma sub-rede por Zona de disponibilidade.
+ Não é possível adicionar uma sub-rede da Zona local.

Como existem sub-redes separadas APIs para adicionar e remover de um balanceador de carga, você deve considerar cuidadosamente a ordem das operações ao trocar as sub-redes atuais por novas sub-redes para atender a esses requisitos. Além disso, você deve adicionar temporariamente uma sub-rede da outra Zona de disponibilidade se precisar trocar todas as sub-redes para o load balancer. Por exemplo, se o load balancer tiver uma única Zona de disponibilidade e você precisar trocar sua sub-rede por outra sub-rede, você deverá primeiro adicionar uma sub-rede de uma segunda Zona de disponibilidade. Em seguida, você pode remover a sub-rede na Zona de disponibilidade original (sem precisar descer para uma sub-rede), adicionar uma nova sub-rede na Zona de disponibilidade original (sem exceder uma sub-rede por Zona de disponibilidade) e, em seguida, remover a sub-rede da segunda Zona de disponibilidade (se ela só for necessária para realizar a troca).

## Configurar sub-redes usando o console
<a name="add-remove-subnets-console"></a>

Use o procedimento a seguir para adicionar ou remover sub-redes usando o console.

**Como configurar sub-redes usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Mapeamento de rede**, escolha **Editar sub-redes**.

1. Na página **Editar sub-redes**, na seção **Mapeamento de rede**, adicione e remova sub-redes conforme o necessário.

1. Ao concluir, escolha **Save changes**.

## Configurar sub-redes usando a CLI
<a name="add-remove-subnets-cli"></a>

Use os exemplos a seguir para adicionar ou remover sub-redes usando a AWS CLI.

**Para adicionar uma sub-rede ao seu load balancer usando a CLI**  
Use o comando [attach-load-balancer-to-subnets](https://docs.aws.amazon.com/cli/latest/reference/elb/attach-load-balancer-to-subnets.html) a seguir para adicionar duas sub-redes ao seu balanceador de carga:

```
aws elb attach-load-balancer-to-subnets --load-balancer-name my-load-balancer --subnets subnet-dea770a9 subnet-fb14f6a2
```

A resposta lista todas as sub-redes para o load balancer. Por exemplo:

```
{
    "Subnets": [
        "subnet-5c11033e",
        "subnet-dea770a9",
        "subnet-fb14f6a2"
    ]
}
```

**Para remover uma sub-rede usando o AWS CLI**  
Use o seguinte comando [detach-load-balancer-from-subnets](https://docs.aws.amazon.com/cli/latest/reference/elb/detach-load-balancer-from-subnets.html) para remover as sub-redes especificadas do balanceador de carga especificado:

```
aws elb detach-load-balancer-from-subnets --load-balancer-name my-loadbalancer --subnets subnet-450f5127
```

A resposta lista as sub-redes restantes do load balancer. Por exemplo:

```
{
    "Subnets": [
        "subnet-15aaab61"
    ]
}
```

# Configurar grupos de segurança para o Classic Load Balancer
<a name="elb-vpc-security-groups"></a>

Ao usar o Console de gerenciamento da AWS para criar um balanceador de carga, você pode escolher um grupo de segurança existente ou criar um novo. Se você escolher um security group existente, ele deverá permitir tráfego em ambas as direções ao listener e às portas de verificação de integridade para o load balancer. Se você optar por criar um security group, o console adicionará automaticamente regras para permitir todo o tráfego para essas portas.

[VPC não padrão] Se você usa AWS CLI a API or, cria um balanceador de carga em uma VPC não padrão, mas não especifica um grupo de segurança, seu balanceador de carga é automaticamente associado ao grupo de segurança padrão da VPC.

[VPC padrão] Se você usa a API AWS CLI ou para criar um balanceador de carga em sua VPC padrão, não poderá escolher um grupo de segurança existente para seu balanceador de carga. Em vez disso, o Elastic Load Balancing fornecerá um grupo de segurança com regras para permitir todo o tráfego nas portas especificadas para o balanceador de carga. O Elastic Load Balancing cria somente um desses grupos de segurança por AWS conta, com um nome no formato *id* default\$1elb\$1 (por exemplo,). `default_elb_fc5fbed3-0405-3b7d-a328-ea290EXAMPLE` Load balancers subsequentes que você criar no VPC padrão também usarão esse security group. Leia as regras do security group para garantir que eles permitem tráfego no listener e nas portas de verificação de integridade do novo load balancer. Ao excluir seu load balancer, esse security group não será excluído automaticamente.

Se você adicionar um listener a um load balancer existente, deverá analisar seus security groups para garantir que eles permitam tráfego na porta do novo listener em ambas as direções.

**Topics**
+ [Regras recomendadas para os grupos de segurança do balanceador de carga](#recommended-sg-rules)
+ [Atribuir grupos de segurança usando o console](#assign-sg-console)
+ [Atribua grupos de segurança usando o AWS CLI](#assign-sg-cli)

## Regras recomendadas para os grupos de segurança do balanceador de carga
<a name="recommended-sg-rules"></a>

Os security groups dos seus load balancers devem permitir que eles se comuniquem com suas instâncias. As regras recomendadas dependem do tipo de balanceador de carga, voltado para a internet ou interno.

**Balanceador de carga voltado para a internet**  
A tabela a seguir mostra as regras de entrada recomendadas para um balanceador de carga voltado para a internet.


| Fonte | Protocolo | Intervalo de portas | Comment | 
| --- | --- | --- | --- | 
| 0.0.0.0/0 | TCP | *listener* | Permite todo o tráfego de entrada na porta do listener do load balancer | 

A tabela a seguir mostra as regras de saída recomendadas para um balanceador de carga voltado para a internet.


| Destino | Protocolo | Intervalo de portas | Comment | 
| --- | --- | --- | --- | 
| *instance security group* | TCP | *instance listener* | Permitir tráfego de saída para instâncias na porta do ouvinte da instância | 
| *instance security group* | TCP | *health check* | Permitir tráfego de saída para instâncias na porta de verificação de integridade | 

**Balanceadores de carga internos**  
A tabela a seguir mostra as regras de entrada recomendadas para um balanceador de carga interno.


| Fonte | Protocolo | Intervalo de portas | Comment | 
| --- | --- | --- | --- | 
| *VPC CIDR* | TCP | *listener* | Permite tráfego de entrada do CIDR da VPC na porta do listener do load balancer | 

A tabela a seguir mostra as regras de saída recomendadas para um balanceador de carga interno.


| Destino | Protocolo | Intervalo de portas | Comment | 
| --- | --- | --- | --- | 
| *instance security group* | TCP | *instance listener* | Permitir tráfego de saída para instâncias na porta do ouvinte da instância | 
| *instance security group* | TCP | *health check* | Permitir tráfego de saída para instâncias na porta de verificação de integridade | 

## Atribuir grupos de segurança usando o console
<a name="assign-sg-console"></a>

Use o procedimento a seguir para alterar os grupos de segurança associados ao balanceador de carga.

**Como atualizar um grupo de segurança atribuído ao balanceador de carga usando o console**

1. Abra o console do Amazon EC2 em [https://console.aws.amazon.com/ec2/](https://console.aws.amazon.com/ec2/).

1. No painel de navegação, em **Load Balancing** (Balanceamento de carga), escolha **Load balancers** (Balanceadores de carga).

1. Escolha o nome do balanceador de carga para abrir sua página de detalhes.

1. Na guia **Segurança**, escolha **Editar**.

1. Na página **Editar grupos de segurança**, em **Grupos de segurança**, adicione ou remova grupos de segurança conforme o necessário.

   Você pode adicionar até cinco grupos de segurança.

1. Ao concluir, escolha **Save changes**.

## Atribua grupos de segurança usando o AWS CLI
<a name="assign-sg-cli"></a>

Use o comando [apply-security-groups-to-load-balancer](https://docs.aws.amazon.com/cli/latest/reference/elb/apply-security-groups-to-load-balancer.html) a seguir para associar um grupo de segurança a um balanceador de carga. Os security groups especificados substituem os que foram associados anteriormente.

```
aws elb apply-security-groups-to-load-balancer --load-balancer-name my-loadbalancer --security-groups sg-53fae93f
```

Esta é uma resposta de exemplo:

```
{
  "SecurityGroups": [
     "sg-53fae93f"
  ]
}
```

# Configure a rede ACLs para seu Classic Load Balancer
<a name="elb-vpc-network-acls"></a>

A lista de controle de acesso (ACL) à rede padrão para uma VPC permite todo o tráfego de entrada e saída. Se você criar uma rede personalizada ACLs, deverá adicionar regras que permitam que o balanceador de carga e as instâncias se comuniquem.

As regras recomendadas para a sub-rede do balanceador de carga dependem do tipo de balanceador: voltado para a internet ou interno.

**Balanceador de carga voltado para a internet**  
Veja a seguir as regras de entrada recomendadas para um balanceador de carga voltado para a internet.


| Fonte | Protocolo | Intervalo de portas | Comment | 
| --- | --- | --- | --- | 
|  0.0.0.0/0  |  TCP  |  *listener*  |  Permite todo o tráfego de entrada na porta do listener do load balancer  | 
|  *VPC CIDR*  |  TCP  |  1024-65535  |  Permitir tráfego de entrada de CIDR da VPC em portas efêmeras  | 

Veja a seguir as regras de saída recomendadas para um balanceador de carga voltado para a internet.


| Destino | Protocolo | Intervalo de portas | Comment | 
| --- | --- | --- | --- | 
|  *VPC CIDR*  |  TCP  |  *instance listener*  |  Permitir todo o tráfego de saída na porta do listener da instância  | 
|  *VPC CIDR*  |  TCP  |  *health check*  |  Permitir todo o tráfego de saída na porta de verificação de integridade  | 
|  0.0.0.0/0  |  TCP  |  1024-65535  |  Permitir todo o tráfego de saída nas portas efêmeras  | 

**Balanceador de carga interno**  
Veja a seguir as regras de entrada recomendadas para um balanceador de carga interno.


| Fonte | Protocolo | Intervalo de portas | Comment | 
| --- | --- | --- | --- | 
|  *VPC CIDR*  |  TCP  |  *listener*  |  Permite tráfego de entrada do CIDR da VPC na porta do listener do load balancer  | 
|  *VPC CIDR*  |  TCP  |  1024-65535  |  Permitir tráfego de entrada de CIDR da VPC em portas efêmeras  | 

Veja a seguir as regras de saída recomendadas para um balanceador de carga interno.


| Destino | Protocolo | Intervalo de portas | Comment | 
| --- | --- | --- | --- | 
|  *VPC CIDR*  |  TCP  |  *instance listener*  |  Permitir tráfego de saída para a CIDR da VPC na porta do listener da instância  | 
|  *VPC CIDR*  |  TCP  |  *health check*  |  Permitir tráfego de saída para a CIDR da VPC na porta de verificação de integridade  | 
|  *VPC CIDR*  |  TCP  |  1024-65535  |  Permitir tráfego de saída para a CIDR da VPC nas portas efêmeras  | 

# Configure um nome de domínio personalizado para seu Classic Load Balancer
<a name="using-domain-names-with-elb"></a>

Cada Classic Load Balancer recebe um nome de Sistema de Nomes de Domínio (DNS) padrão. Esse nome DNS inclui o nome da AWS região na qual o balanceador de carga é criado. Por exemplo, se você criar um balanceador de carga denominado `my-loadbalancer` na região Oeste dos EUA (Oregon), seu balanceador de carga receberá um nome DNS como `my-loadbalancer-1234567890.us-west-2.elb.amazonaws.com`. Para acessar o site nas suas instâncias, cole esse nome DNS no campo de endereço de um navegador da web. No entanto, esse nome DNS não é fácil para os clientes se lembrarem de usar.

Se você preferir usar um nome DNS amigável para seu load balancer, como `www.example.com`, em vez do nome DNS padrão, pode criar um nome de domínio personalizado e associá-lo com o nome DNS do seu load balancer. Quando um cliente faz uma solicitação usando esse nome de domínio personalizado, o servidor DNS o resolverá para o nome DNS para seu load balancer.

**Topics**
+ [Como associar seu nome de domínio personalizado com o nome do seu balanceador de carga](#dns-associate-custom-elb)
+ [Como usar o failover de DNS do Route 53 para o seu balanceador de carga](#configure-dns-failover)
+ [Dissociar seu nome de domínio personalizado do seu balanceador de carga](#dns-disassociate-custom-elb)

## Como associar seu nome de domínio personalizado com o nome do seu balanceador de carga
<a name="dns-associate-custom-elb"></a>

Primeiro, se você ainda não tiver feito isso, registre o nome de domínio. A Sociedade Internet para a Atribuição de Nomes e Números (ICANN, Internet Corporation for Assigned Names and Numbers) gerencia nomes de domínio na Internet. Você registra um nome de domínio usando um *registrador de nomes de domínio*, uma organização chancelada pela ICANN que gerencia o registro dos nomes de domínio. O site do registrador fornecerá instruções detalhadas e informações sobre a definição de preço para registrar o nome de domínio. Para saber mais, consulte os seguintes recursos:
+ Para usar o Amazon Route 53 para registrar um nome de domínio, consulte [Registrar nomes de domínio com o Route 53](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/registrar.html) no *Guia do desenvolvedor do Amazon Route 53*.
+ Para obter uma lista de registradores chancelados, consulte [Lista de registradores credenciados](https://www.icann.org/en/accredited-registrars).

Em seguida, use o serviço DNS, como o registrador de domínios, para criar um registro CNAME a fim de rotear consultas para o load balancer. Para obter mais informações, consulte a documentação do serviço DNS.

Também é possível usar o Route 53 como seu serviço DNS. Você cria uma *zona hospedada*, que contém informações sobre como rotear o tráfego na Internet para seu domínio, e um *conjunto de registro do recurso do alias*, que roteia as consultas de seu nome de domínio para o balanceador de carga. O Route 53 não cobra por consultas de DNS de conjuntos de registros de alias, e você pode usar esses conjuntos para rotear consultas de DNS para o balanceador de carga para o apex de zona do seu domínio (por exemplo, `example.com`). Para obter informações sobre a transferência de serviços DNS para os domínios existentes ao Route 53, consulte [Configurar o Amazon Route 53 como serviço DNS](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-configuring.html) no *Guia do desenvolvedor do Amazon Route 53*.

Por fim, crie uma zona hospedada e um conjunto de registros de alias para seu domínio usando o Route 53. Para obter mais informações, consulte [Rotear tráfego para um balanceador de carga](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/routing-to-elb-load-balancer.html) no *Guia do desenvolvedor do Amazon Route 53*.

## Como usar o failover de DNS do Route 53 para o seu balanceador de carga
<a name="configure-dns-failover"></a>

Se você usa o Route 53 para rotear consultas de DNS para seu balanceador de carga, também poderá configurar o failover de DNS para o seu balanceador de carga usando o Route 53. Em uma configuração de failover, o Route 53 verifica a integridade das instâncias do EC2 registradas para o balanceador de carga, para determinar se elas estão disponíveis. Se não houver instâncias do EC2 íntegras registradas no balanceador de carga, ou se o próprio balanceador de carga não estiver íntegro, o Route 53 roteará o tráfego para outro recurso disponível, como um balanceador de carga íntegro ou um site estático no Amazon S3.

Por exemplo, vamos supor que você tenha uma aplicação Web para `www.example.com` e deseja instâncias redundantes em execução por trás de dois balanceadores de carga que residam em diferentes regiões. Você deseja que o tráfego seja roteado primariamente para o balanceador de carga em uma região e quer usar o balanceador de carga na outra região como backup durante falhas. Se você configurar o failover de DNS, poderá especificar os balanceadores de carga primário e secundário (backup). O Route 53 direcionará o tráfego para o balanceador de carga primário, se estiver disponível, ou para o balanceador de carga secundário, em caso contrário.

**Como usar a opção Avaliar a integridade do destino**
+ Quando a opção Avaliar a integridade do destino está definida como `Yes` em um registro de alias para um Classic Load Balancer, o Route 53 avalia a integridade do recurso especificado pelo valor do `alias target`. Para um Classic Load Balancer, o Route 53 usa as verificações de integridade da instância associadas ao balanceador de carga.
+ Quando pelo menos uma das instâncias registradas em um Classic Load Balancer estiver íntegra, o Route 53 marcará o registro de alias como íntegro. Em seguida, o Route 53 retornará os registros de acordo com a sua política de roteamento. Se a política de roteamento por failover for usada, o Route 53 retornará o registro primário.
+ Quando todas as instâncias registradas de um Classic Load Balancer não estiverem íntegras, o Route 53 marcará o registro do alias como não íntegro. Em seguida, o Route 53 retornará os registros de acordo com a sua política de roteamento. Se a política de roteamento por failover for usada, o Route 53 retornará o registro secundário. 

Para obter mais informações, consulte [Configurar failover de DNS](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/dns-failover-configuring.html) no *Guia do desenvolvedor do Amazon Route 53*.

## Dissociar seu nome de domínio personalizado do seu balanceador de carga
<a name="dns-disassociate-custom-elb"></a>

Você pode dissociar seu nome de domínio personalizado de uma instância do load balancer ao primeiro excluir os conjuntos de registro de recurso na sua hosted zone e, em seguida, excluir a hosted zone. Para obter mais informações, consulte [Editar registros](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/resource-record-sets-editing.html) e [Excluir uma zona hospedada pública](https://docs.aws.amazon.com/Route53/latest/DeveloperGuide/DeleteHostedZone.html) no *Guia do desenvolvedor do Amazon Route 53*.