ErrorLog

ELB 502 Error

ihl 2021. 4. 30. 23:42

이번엔 502 에러다

  팀원이 새롭게 서버를 배포하다가 502에러가 뜨고, 로드밸런서 리스너의 상태도 UnHealthy인 것을 발견했다. 502 에러는 왜 발생하는 것일까..

 

aws 문서

  문서를 찾아보니 503 때와는 달리 원인이 엄청 다양하다. 혼란스러우니 502 코드가 애초에 무엇을 의미하는지 알아보았다.

 

MDN설명

  서버로부터 유효하지 않은 대답을 받은 것이 502라고 한다. 다른 글도 더 살펴보니 내가 만든 Node.js 서버가 응답을 잘못주면 502 에러가 날 수 있다고 한다. 

 

  그런데 생각해보면 나는 Node.js 서버에 GET / 에 대한 응답을 주지 않았다. 그래서 응답이 잘못된거라 생각하고 502 에러를 띄우는건가? 하는 느낌이 왔다. 로드밸런서 설정을 더 뒤져보니 서버의 / 경로에 대한 요청으로 HealthCheck를 하고 있었다! /에 대한 응답이 20x 코드가 아니니까 아 잘못된 서버구나 하고 UnHealthy 판정을 내린 모양이다..

 

app.use('/mylist', myListRouter);
app.get('/', (req, res) => {
  res.send('hello');
});

  서버에 Get / 에 대한 처리를 추가해주었다. 그랬더니 해결되었다!!