PM2 사용법: Node.js 애플리케이션 관리 및 모니터링

2025. 1. 21. 10:14개발/개발 필기

반응형

우분투가 설치가 안 되어 있다면 

우분투 설치하러가기

 

우분투에서 Node.js와 PM2를 사용한 무중단 애플리케이션 설치 방법

1. curl 설치Node.js 설치를 위해 먼저 curl이 필요합니다. 아래 명령을 사용하여 curl을 설치합니다.sudo apt updatesudo apt install curl 2. Node.js 설치 스크립트 추가Node.js의 버전은 18.x 또는 20.x 중 선택하여

nickdeveloper.co.kr

 

사실, PM2는 제가 자주 사용하는 도구 중 하나입니다.

계속 사용하다 보니 따로 노트를 남기지 않고 넘어갔지만,

나이가 들어서 그런지 가끔씩 정보를 깜빡하곤 하더군요.

 

그래서 이번 기회에 저만의 PM2 사용법을 정리해 보려고 합니다.

 

먼저 작업하고자 하는 디렉토리로 이동해 보겠습니다.

아래 명령어를 입력하시면 됩니다:

cd your-work-folder

 

 

이제 PM2로 Node.js 애플리케이션을 실행해 보겠습니다.

애플리케이션 파일 이름을 <your-app.js>에 맞추어

아래 명령어를 입력하면 됩니다:

pm2 start <your-app.js>

이 명령어를 통해 애플리케이션이 실행됩니다.

PM2는 이 애플리케이션을 백그라운드에서 관리하며,

오류가 발생해도 자동으로 재시작할 수 있는 기능을 제공합니다.

 

다음으로, 실행 중인 애플리케이션의 상태와 성능을 모니터링하고 싶다면,

아래 명령어를 입력해 보세요:

pm2 monit

이 명령어를 실행하면,

터미널 화면에 현재 실행 중인 애플리케이션들의 상태와 CPU,

메모리 사용량 등의 정보가 실시간으로 표시됩니다.

화면은 다음과 같은 형태로 나타날 것입니다:

윈도우 pm2 실행 이미지

이 정보들을 통해 애플리케이션의 성능을 체크하고 필요에 따라 조치를 취할 수 있습니다.

PM2는 이렇게 애플리케이션의 상태를 간편하게 관리하고 모니터링할 수 있는 유용한 도구입니다.

 

나가고 싶다면 Ctrl + c 입니다

 

다음 생성을 했으면 멈추고, 재실행하고 삭제를 해야 겠죠?!

애플리케이션 멈추기

실행 중인 애플리케이션을 멈추고 싶다면,

아래 명령어를 사용하세요.

<app-id>는 pm2 list 명령어로 확인한 애플리케이션의 ID를 의미합니다.

pm2 stop <app-id>

// 전체 app을 멈추고 싶다면
pm2 stop all

// 이름이 길 경우 번호로
pm2 stop 1

 

 

애플리케이션 재실행하기

멈춘 애플리케이션을 다시 실행하고 싶다면, 아래 명령어를 입력합니다:

pm2 restart <app-id>

// 전체 app을 재실행하고 싶다면
pm2 restart all

// 이름이 길 경우 번호로
pm2 restart 1

애플리케이션이 새롭게 시작되며, 이전의 상태를 유지합니다.

 

애플리케이션 삭제하기

더 이상 사용하지 않는 애플리케이션을 삭제하고 싶다면, 다음 명령어를 사용하세요:

pm2 delete <app-id>

// 전체 app을 삭제하고 싶다면
pm2 delete all

// 이름이 길 경우 번호로
pm2 delete 1

이 명령어를 실행하면 애플리케이션이 PM2 관리 목록에서 제거됩니다.

 

현재 실행 중인 애플리케이션 리스트 확인하기

PM2로 실행 중인 모든 애플리케이션의 상태를 확인하려면 pm2 list 명령어를 사용합니다. 이 명령어를 입력하면 현재 실행 중인 애플리케이션의 목록과 그 상태를 한 눈에 볼 수 있습니다:

pm2 list

윈도우 pm2 list 결과

여기서 각 열은 다음과 같은 정보를 나타냅니다:

  • App name: 애플리케이션 이름
  • id: 프로세스 ID
  • mode: 실행 모드 (fork 또는 cluster)
  • status: 애플리케이션의 현재 상태 (online, stopped 등)
  • cpu: CPU 사용량
  • memory: 메모리 사용량

마무리

이로써 PM2를 사용하여 Node.js 애플리케이션을 실행하고 관리하는 방법을 알아보았습니다. PM2는 애플리케이션의 상태를 쉽게 모니터링하고, 필요할 때 멈추거나 재실행하며, 삭제하는 등의 작업을 간편하게 할 수 있게 해주는 유용한 도구입니다.

앞으로 PM2를 활용하여 애플리케이션 관리의 효율성을 높이시기 바랍니다. 혹시 추가적인 질문이나 도움이 필요하시면 언제든지 문의해 주세요! 감사합니다.

반응형