KUKJIN LEE's profile picture

KUKJIN LEE

Posted time

Posted 3 weeks ago

AWS EC2에서 PM2를 사용한 Node.js 서버 자동 재시작 가이드

AWS EC2에 배포된 Node.js 오류로 인해 중단되는 것을 방지하고 자동으로 재시작하는 방법을 찾고 계신가요? PM2를 사용하면 간단하게 이 문제를 해결할 수 있습니다.

PM2란 무엇인가?

PM2는 Node.js 애플리케이션을 관리하고 유지하는 데 사용되는 프로세스 매니저입니다. PM2는 애플리케이션의 상태를 모니터링하고, 오류 발생 시 자동으로 재시작하는 기능을 제공합니다. 이를 통해 서버 다운타임을 최소화할 수 있습니다.

 

PM2 설치

PM2를 사용하려면 먼저 EC2 인스턴스에 PM2를 설치해야 합니다.

# Node.js 설치
sudo apt update
sudo apt install -y nodejs npm

# PM2 설치
sudo npm install pm2@latest -g

 

애플리케이션 시작 및 모니터링

PM2를 사용하여 애플리케이션을 시작하고 모니터링하는 방법은 다음과 같습니다.

 

# 애플리케이션 시작
pm2 start app.js

# 애플리케이션 모니터링
pm2 list

 

 

서버 재부팅 시 PM2 자동 시작 설정

EC2 인스턴스를 재부팅할 때마다 PM2가 자동으로 애플리케이션을 다시 시작하도록 설정할 수 있습니다.

 

# PM2를 시스템 서비스로 설정
pm2 startup systemd

# 현재 실행 중인 프로세스를 PM2 서비스로 등록
pm2 save

 

위 명령어는 PM2의 현재 설정을 저장하고, 서버 재부팅 시 PM2가 자동으로 시작되도록 합니다.

 

PM2 로그 관리

PM2는 애플리케이션의 로그를 쉽게 관리할 수 있습니다. PM2 로그를 확인하거나 지울 수 있습니다.

 

# 로그 확인
pm2 logs

# 특정 애플리케이션 로그 확인
pm2 logs my-app

# 로그 파일 지우기
pm2 flush

 

PM2는 AWS EC2에 배포된 Node.js 애플리케이션의 가용성을 높이고, 안정적으로 운영할 수 있게 도와주는 강력한 도구입니다. PM2를 사용하면 애플리케이션의 상태를 지속적으로 모니터링하고, 오류 발생 시 자동으로 재시작할 수 있습니다. 이를 통해 서버 다운타임을 최소화하고, 안정적인 서비스를 제공할 수 있습니다.

New Tech Posts