Verificações de integridade para os grupos de destino - 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á.

Verificações de integridade para os grupos de destino

Seu Application Load Balancer enviará periodicamente solicitações para seus destinos registrados para testar o status deles. Esses testes se chamam verificações de integridade.

Cada nó do load balancer só roteia solicitações para os destinos íntegros nas Zonas de disponibilidade habilitadas para o load balancer. Cada nó do load balancer verifica a integridade de cada destino usando as configurações de verificação de integridade para os grupos de destino em que o destino é registrado. Após o destino ser registrado, ele deverá ser aprovado em uma verificação de integridade para ser considerado íntegro. Após cada verificação de integridade ser concluída, o nó do load balancer fechará a conexão estabelecida para a verificação de integridade.

Se um grupo de destino contiver apenas destinos registrados não íntegros, o load balancer roteará as solicitações a todos esses destinos, independentemente do status de integridade deles. Isso significa que, se todos os destinos falharem em verificações de integridade ao mesmo tempo em todas as Zonas de disponibilidade habilitadas, o balanceador de carga falhará aberto. O efeito do fail-open é permitir tráfego para todos os destinos em todas as Zonas de disponibilidade habilitadas, independentemente do status de integridade, com base no algoritmo de balanceamento de carga.

As verificações de integridade não oferecem suporte ao WebSockets.

Configurações de verificação de integridade

Você pode configurar verificações de integridade para os destinos em um grupo de destino conforme descrito na tabela a seguir. Os nomes de configuração usados na tabela são os nomes usados na API. O load balancer envia uma solicitação de verificação de integridade a todos os destinos registrados, a cada HealthCheckIntervalSeconds segundos, usando a porta, o protocolo e o caminho de ping especificados. Cada solicitação de verificação de integridade é independente e o resultado dura por todo o intervalo. O tempo necessário para o destino responder não afeta o intervalo da próxima solicitação de verificação de integridade. Se a verificação de integridade exceder as falhas consecutivas de UnhealthyThresholdCount, o load balancer tirará o destino de serviço. Quando as verificações de integridade excederem os sucessos consecutivos de HealthyThresholdCount, o load balancer colocará o destino de volta em serviço.

Configuração Descrição

HealthCheckProtocol

O protocolo que o load balancer usa ao executar verificações de integridade nos destinos. Os protocolos possíveis são HTTP e HTTPS. O padrão é o protocolo HTTP.

HealthCheckPort

A porta que o load balancer usa ao executar verificações de integridade nos destinos. O padrão é usar a porta em que cada destino recebe o tráfego do load balancer.

HealthCheckPath

O destino das verificações de integridade nos destinos.

Se a versão do protocolo for HTTP/1.1 ou HTTP/2, especifique um URI válido (/path?query). O padrão é /.

Se a versão do protocolo for gRPC, especifique o caminho de um método de verificação de integridade personalizado com o formato/Package.Class/method. O padrão é /AWS.ALB/healthcheck.

HealthCheckTimeoutSeconds

O tempo, em segundos, durante o qual ausência de resposta de um destino significa uma falha na verificação de integridade. O intervalo é de 2 a 120 segundos. O padrão é de 5 segundos se o tipo de destino é instance ou ip e de 30 segundos se o tipo de destino é lambda.

HealthCheckIntervalSeconds

A quantia aproximada de tempo, em segundos, entre as verificações de integridade de um destino individual. O intervalo é de 5 a 300 segundos. O padrão é de 30 segundos se o tipo de destino é instance ou ip e de 35 segundos se o tipo de destino é lambda.

HealthyThresholdCount

O número de verificações de integridade bem-sucedidas consecutivas necessárias antes de considerar íntegro um destino não íntegro. O intervalo é de 2 a 10. O padrão é 5.

UnhealthyThresholdCount

O número de verificações de integridade consecutivas exigido antes considerar um destino não íntegro. O intervalo é de 2 a 10. O padrão é 2.

Matcher

O códigos a serem usados ao verificar uma resposta bem-sucedida de um destino. Estes são chamadosCódigo de sucessoNo console do.

Se a versão do protocolo for HTTP/1.1 ou HTTP/2, os valores possíveis serão de 200 a 499. Você pode especificar valores múltiplos (por exemplo, "200,202") ou um intervalo valores (por exemplo, "200-299"). O valor padrão é 200.

Se a versão do protocolo for gRPC, os valores possíveis serão de 0 a 99. Você pode especificar valores múltiplos (por exemplo, "0,1") ou um intervalo valores (por exemplo, "0-5"). O valor padrão é 12.

Status de integridade do destino

Antes que o load balancer envie uma solicitação de verificação de integridade para um destino, você deverá registrá-lo com um grupo de destino, especificar o grupo de destino em uma regra do listener e garantir que a Zona de disponibilidade do destino esteja habilitado para o load balancer. Antes de um destino receber solicitações do load balancer, ele deverá ser aprovado nas verificações de integridade iniciais. Após o destino ser aprovado nas verificações de integridade iniciais, o status será Healthy.

A tabela a seguir descreve os valores possíveis para o status de integridade de um destino registrado.

Valor Descrição

initial

O load balancer está no processo de registro do destino ou executando as verificações de integridade iniciais no destino.

Códigos de motivo relacionados: Elb.RegistrationInProgress | Elb.InitialHealthChecking

healthy

O destino é íntegro.

Códigos de motivo relacionados: Nenhum

unhealthy

O destino não respondeu a uma verificação de integridade ou falhou em uma verificação de integridade.

Códigos de motivo relacionados: Target.ResponseCodeMismatch | Target.Timeout | Target.FailedHealthChecks | Elb.InternalError

unused

O destino não está registrado em um grupo de destino, o grupo de destino não é usado em uma regra do listener, o destino está em uma zona de disponibilidade desativada ou o destino está no estado parado ou encerrado.

Códigos de motivo relacionados: Target.NotRegistered | Target.NotInUse | Target.InvalidState | Target.IpUnusable

draining

O destino está cancelando o registro e está acontecendo drenagem da conexão.

Código de motivo relacionado: Target.DeregistrationInProgress

unavailable

As verificações de integridade estão desativadas para o grupo de destino.

Código de motivo relacionado: Target.HealthCheckDisabled

Códigos de motivo de verificação de integridade

Se o status de um destino for qualquer valor diferente de Healthy, a API retornará um código de motivo e uma descrição do problema; o console exibirá a mesma descrição em uma dica de ferramenta. Os códigos de motivo que começarem com Elb são originados no load balancer, e os códigos de motivo que começarem com Target são originados no destino.

Código do motivo Descrição

Elb.InitialHealthChecking

Verificações de integridade iniciais em andamento

Elb.InternalError

As verificações de integridade falharam devido a um erro interno

Elb.RegistrationInProgress

O registro do destino está em andamento

Target.DeregistrationInProgress

O cancelamento do registro do destino está em andamento

Target.FailedHealthChecks

Verificações de integridade com falha

Target.HealthCheckDisabled

As verificações de integridade estão desativadas

Target.InvalidState

O destino está no estado interrompido

O destino está no estado encerrado

O destino está no estado encerrado ou interrompido

O destino está em um estado inválido

Target.IpUnusable

O endereço IP não pode ser usado como um destino, uma vez que está sendo usado por um load balancer.

Target.NotInUse

O grupo de destino não está configurado para receber tráfego do load balancer

O destino está em uma Zona de disponibilidade que não está habilitada para o load balancer

Target.NotRegistered

O destino não está registrado no grupo de destino

Target.ResponseCodeMismatch

As verificações de integridade apresentaram falhas com estes códigos: [código]

Target.Timeout

Solicitação expirada

Verificar a integridade de seus destinos

Você pode verificar a integridade dos destinos registrados com seus grupos de destino.

New console

Para verificar a integridade dos seus destinos usando o console novo

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

  2. No painel de navegação, em LOAD BALANCING, selecione Grupos de destino.

  3. Escolha o nome do grupo de destino para abrir sua página de detalhes.

  4. Na guia Destinos, a coluna Status indica o status de cada destino.

  5. Se o status for qualquer valor diferente deHealthy, oDetalhes do statuscontém mais informações.

Old console

Para verificar a integridade dos seus destinos usando o console antigo

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

  2. No painel de navegação, em LOAD BALANCING, selecione Grupos de destino.

  3. Selecione o grupo de destino.

  4. Na guia Destinos, a coluna Status indica o status de cada destino.

  5. Se o status for qualquer valor diferente de Healthy, visualize a dica de ferramenta para obter mais informações.

Para verificar a integridade dos seus destinos usando a AWS CLI

Use o comando describe-target-health. O resultado desse comando contém o estado de integridade do destino. Se o status for qualquer valor diferente de Healthy, a saída também inclui um código de motivo.

Como receber notificações por e-mail sobre destinos não íntegros

Use alarmes do CloudWatch para acionar uma função do Lambda para enviar detalhes sobre destinos não íntegros. Para obter instruções detalhadas, consulte a postagem do blog a seguir: Identificação de alvos não íntegros do seu load balancer.

Modificar as configurações de verificação de integridade de um grupo de destino

Você pode modificar as configurações de verificação de integridade do seu grupo de destino a qualquer momento.

New console

Para modificar as configurações de verificação de integridade de um grupo de destino usando o console

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

  2. No painel de navegação, em LOAD BALANCING, selecione Grupos de destino.

  3. Escolha o nome do grupo de destino para abrir sua página de detalhes.

  4. No“Detalhes do grupo, na guiaConfigurações de verificação de integridadeSelecione aEdite.

  5. NoEditar configurações de verificação de integridadePara modificar as configurações conforme o necessário e, em seguida, selecioneSalve as alterações.

Old console

Para modificar as configurações de verificação de integridade de um grupo de destino usando o console antigo

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

  2. No painel de navegação, em LOAD BALANCING, selecione Grupos de destino.

  3. Selecione o grupo de destino.

  4. Na guia Verificações de integridade, selecione Editar.

  5. Na página Editar grupo de destino, modifique as configurações conforme o necessário e, em seguida, selecione Salvar.

Para modificar as configurações de verificação de integridade de um grupo de destino usando a AWS CLI

Use o comando modify-target-group.