[AWS] Elastic Beanstalk node package 설치 에러 트러블슈팅
아니 왜 배포 실패함... 그동안 잘 되던 배포가 특정 시점부터 되다가 안되다가를 반복하는 일이 발생했다. 가장 큰 문제는 어쩌다 될 때도 있다는 것이다.
elastic beanstalk 에러 메시지 상으론 npm 설치를 못했다고 eb-engine.log를 참고하라고 나온다.
Instance deployment: 'npm' failed to install dependencies that you defined in 'package.json'. For details, see 'eb-engine.log'. The deployment failed.
일단 로그 확인에 앞서서 npm 버전이나 새롭게 추가된 패키지 dependency등을 확인해봤다. 이전에 배포한 버전과 큰 차이는 없었다.
Error: Command /bin/su webapp -c npm --omit=dev install failed with error exit status 244. Stderr:npm WARN ERESOLVE overriding peer dependency
음 npm을 설치하다가 난 문제는 맞는데 이것 저것 조치해보다가 정답을 찾았다.
node.js - Why npm install failed only in ElasticBeanstalk? - Stack Overflow
EC2의 메모리 부족 문제로 생긴 이슈로 EC2 티어를 높이거나 swap을 통해서 해결할 수 있다고 한다.
일단은 임시 조치로 Elastic Beanstalk가 사용할 수 있는 EC2 pool을 micro에서 small로 올렸더니 아주 잘 배포되는 모습을 볼 수 있었다... (자본주의로 해결)
임시방편을 해뒀지만 정확하게 메모리가 어떤부분에서 문제되는지 찾아봐야겠다.
또한 설치는 외부에서 하고 EB로 올릴 수 있는지도 확인해봐야겠다.