Como soluciono problemas de erros 503 (serviço indisponível) do meu Application Load Balancer?

3 minuto de leitura
0

Recebo um erro HTTP 503 (Serviço indisponível) ao usar um Application Load Balancer (ALB). Como posso solucionar esse erro?

Breve descrição

Para determinar se o Application Load Balancer está gerando os erros 503, siga um destes procedimentos:

  • Acesse suas métricas do CloudWatch e localize uma métrica rotulada HTTPCode_ELB_503_Count.
  • Execute este comando CURL. Se a resposta contiver “503 Service Temporarily Unavailable” (Serviço temporariamente indisponível), o erro é proveniente do Application Load Balancer.
    Certifique-se de substituir MY_URL pelo URL usado para acessar o Application Load Balancer:
$ curl -IkL MY_URL
  • Verifique os logs de acesso do Application Load Balancer. Confirme se há um elb_status_code = 503 nos logs. Se você vir erros 503 em qualquer um desses locais, o erro é gerado pelo Application Load Balancer. Use as etapas de solução de problemas a seguir para resolver o erro.

Resolução

Verifique se o grupo de destino tem alvos registrados

Verificar usando o Console do EC2

  1. Acesse o console do Amazon EC2.
  2. No painel de navegação, em Load Balancing (Balanceamento de carga), escolha Target Groups (Grupos de destino).
  3. Escolha o nome do grupo de destino para abrir sua página de detalhes.
  4. Escolha a guia Targets (Destinos).
  5. Verifique se há destinos listados. Se eles estiverem listados, eles estão registrados.

Verificar usando a AWS CLI

Observação: se você receber erros ao executar os comandos da AWS CLI, utilize a versão mais recente da AWS CLI.

Para verificar destinos usando a AWS CLI, use o comando describe-target-health.

Registrar destinos

Se você não vir nenhum alvo registrado, registre-os por meio do console ou da AWS CLI.

Verifique se o grupo de destino está associado a um grupo de Auto Scaling (se você estiver usando o Auto Scaling)

Se o seu grupo de destino fizer parte de um grupo de Auto Scaling, confirme se os dois estão associados corretamente. Se não estiverem, anexe os grupos.

Verificar usando o console do EC2:

  1. Abra o console do Amazon EC2.
  2. No painel de navegação, em Auto Scaling, escolha Auto Scaling Groups (Grupos de Auto Scaling).
  3. Escolha o grupo de Auto Scaling que você deseja verificar.
  4. Em Load balancing (Balanceamento de carga), confirme se o grupo de destino do Application Load Balancer está associado ao grupo de Auto Scaling.

Verificar usando a AWS CLI

Execute o comando describe-auto-scaling. Certifique-se de substituir MY-ASG pelo nome do seu grupo de Auto Scaling. Substitua AWS-REGION pela sua região específica da AWS.

$ aws autoscaling describe-auto-scaling-groups --auto-scaling-group-name MY-ASG --region AWS-REGION

Na saída do comando, confirme se o grupo de destino está listado em TargetGroupARNs.

Anexar o grupo de destino

Se os grupos-alvo não estiverem anexados ao grupo Auto Scaling, associe-os por meio do console ouda CLI.

Verificar a saúde do destino

Depois de confirmar que seus destinos estão registrados, confirme se eles estão em um estado íntegro. Para saber mais, consulte Como identifico e corrijo verificações de integridade com falha para Application Load Balancers?


Informações relacionadas

DeregisterTargets

AttachLoadBalancerTargetGroups

AWS OFICIAL
AWS OFICIALAtualizada há 2 anos