Como soluciono uma falha do nó primário com o erro “502 Bad Gateway” (502 gateway incorreto) ou “504 Gateway Time-out” (504 tempo limite do gateway) no Amazon EMR?

3 minuto de leitura
0

Meu nó primário do Amazon EMR está apresentando falha com um erro “502 Bad Gateway” (502 gateway incorreto) ou “504 Gateway Time-out” (504 tempo limite do gateway).

Breve descrição

Um nó primário do EMR pode apresentar falha com um dos seguintes erros:

The master failed: Error occurred:<html>?? <head><title>502 Bad Gateway</title></head> <body>?? <center><h1>502 Bad Gateway</h1></center> <hr><center>nginx/1.20.0</center>?? </body>?? </html>??

-ou-

The master failed: Error occurred: <html>??<head><title>504 Gateway Time-out</title></head>??<body>??<center><h1>504 Gateway Time-out</h1></center>??<hr><center>nginx/1.16.1</center>??</body>??</html>??

Veja a seguir os motivos comuns para esses erros:

  • O daemon do controlador de instância está no estado interrompido ou está inativo na instância do nó primário.
  • O nó primário fica sem memória ou espaço em disco.
  • As verificações de status da instância do Amazon Elastic Compute Cloud (Amazon EC2) apresentam falha.

Resolução

Solucionar falhas de daemon do controlador de instância do nó primário

O controlador da instância (I/C) do nó primário é o daemon que se comunica com o ambiente de gerenciamento do EMR e com o resto do cluster. Se o controlador da instância não conseguir se comunicar com o ambiente de gerenciamento do EMR, o nó primário será classificado como não íntegro e o cluster será encerrado.

Para resolver isso, analise os logs do controlador da instância para determinar por que o processo falhou. Os logs do controlador da instância estão localizados em /emr/instance-controller/log/.

Se a proteção de encerramento estiver ativada, conecte o SSH ao nó primário e reinicie o processo do controlador da instância.

No Amazon EMR 5.30.0 e versões de lançamento posteriores:

1.    Use o seguinte comando para verificar o status do I/C:

sudo systemctl status instance-controller.service

2.    Use o seguinte comando para reiniciar o I/C se o status estiver inativo:

sudo systemctl start instance-controller.service

Nas versões de lançamento do Amazon EMR 4.x-2.x:

1.    Use o seguinte comando para verificar o status do I/C:

sudo /etc/init.d/instance-controller status

2.    Use o seguinte comando para reiniciar o I/C se o status estiver inativo:

sudo /etc/init.d/instance-controller start

Analise arquivos de log para solucionar problemas de memória e disco

  1. Se a proteção de terminação estiver ativada, use o SSH para se conectar ao nó primário. Em seguida, revise o arquivo de log do estado da instância.
  2. Analise as métricas da instância, como memória e disco, listadas no log de estado instantâneo. Você pode analisar essas métricas usando comandos do Linux, como free -m e df -h.
  3. Use os resultados do arquivo de log para determinar por que o nó primário está usando um grande volume de disco ou memória.

Solucionar falhas na verificação de status da instância do EC2 do nó primário

Solucione problemas de nós primários que têm a proteção de encerramento desativada e o cluster já está encerrado


AWS OFICIAL
AWS OFICIALAtualizada há um ano