Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

[Bug] Erro ao utilizar o cluster ECS

Boa tarde

Verifiquei que após construir o cluster ECS a task é finalizada de forma recorrente sempre com a mensagem abaixo:

Task failed ELB health checks in (target-group arn:aws:elasticloadbalancing:us-west-2:574980437017:targetgroup)

2 respostas

Resolvi o problema com a seguinte solução:

Deixei explícito o status code do retorno do health check do balance

health_check {
    enabled             = true
    interval              = 30
    path                   = "/"
    port                    = "traffic-port"
    protocol            = "HTTP"
    timeout             = 5
    healthy_threshold      = 5
    unhealthy_threshold = 2
    matcher                       = 302 
  }

Pesquisando sobre o caso, verifiquei que o http 302 é referente a redirecionamento.

Analisado o caso, percebi que ainda não consegui resolver

solução!

Compartilhando a solução do caso, tive que adicionar health check para o target group e para a task definition.

Para o target group adicionei a seguinte configuração no terraform

  health_check {
    enabled             = true
    interval            = 30
    path                = var.health_check_path
    port                = "traffic-port"
    protocol            = "HTTP"
    timeout             = 5
    healthy_threshold   = 5
    unhealthy_threshold = 2
    matcher             = var.matcher_ports
  }

Tive que implementar um endpoint de health no projeto para servir como path, mas pelo que pesquisei você também pode adicionar como root ("/"). Em relação ao matcher, deixei como 200 e 302 para tratar casos de redirecionamentos.


variable "health_check_path" {
  default = "/health"
}

variable "matcher_ports" {
  default = "200,302"
}

Na task definition adicionei o seguinte comando ao json template para deixar o container como health no painel da AWS

  "command": ["CMD-SHELL","curl -f http://localhost:3000/health || exit 1"],

Foi necessário instalar o curl dentro da imagem docker uma vez que a imagem que estava trabalhando era alpine.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software