오늘 잘 작동하고 있던 pm2 서버의 웹사이트가 502 Bad Gateway 가 떴다.
부랴부랴 서버에 터미널로 접속해 봤고 pm2가 제대로 작동되고 있는 지 확인하기 위해서 pm2 list를 실행했다.
그런데 pm2가 없다고 아래처럼 결과가 나왔다.
Command 'pm2' not found, did you mean: command 'wm2' from deb wm2 (4+svn20090216-4build1) command 'gm2' from deb gm2 (4:11.2.0-1ubuntu1) command 'pmi' from deb powermanagement-interface (0.3.21) command 'pmc' from deb linuxptp (3.1.1-3) command 'pm' from deb powerman (2.3.5-1build2) command 'pms' from deb pms (0.42-1build4) command 'pmw' from deb pmw (1:4.50-1) command 'tpm2' from deb tpm2-tools (5.2-1build1) command 'pmg' from deb python3-pymatgen (2022.0.17+dfsg1-1build1) command 'pom2' from deb libpod-pom-perl (2.01-3) Try: sudo apt install <deb name>
이상하다.
분명히 어제까지만 해도 잘 작동하던 pm2가 멈췄다.
아니 없다.
pm2 monit 을 실행해도 똑같다.
머리가 하얗게 아무생각이 안났다.
다시 npm install로 설치해야 되나? ci/cd가 되어 있으니 한번 더 배포 해볼까?
하다가 그래 ci/cd 후 서버에서 작동시키는 프롬프트인 쉘스크립트를 실행해 봤다.
start.sh: 8: pm2: not found start.sh: 12: pm2: not found
하지만 역시나이다.
node 도 npm 도 설치했던 것들이 다 실행이 안된다.
Command 'node' not found 라고만 나온다.
뭔가 단단히 잘못되었고 원인도 알기 힘든 오류가 발생했다.
이럴 때는 서버 재부팅부터 해보자.
재부팅 후 이제 웹사이트는 잘 뜬다.
그런데 서버에서 pm2 를 실행해 봐도 여전히 pm2는 없다고만 나온다.
결론,
서버 모니터링을 해보니 새벽에 cpu가 99.9% 를 쳤다.
cpu가 과부하가 발생했고 원인은 해킹이 유력하다.
그런데 cpu가 올랐다고 apt로 설치했던 것이 날라갈 이유가 없다.
이 부분은 계속 원인 분석 해 보려고 한다.