PM2 (Process Manager 2) adalah daemon process manager yang powerful untuk membantu kamu mengelola dan menjaga aplikasi tetap berjalan, PM2 sangat populer di kalangan developer Node.js .
Instalasi PM2
Sebelum menggunakan perintah-perintah PM2, Perlu menginstalnya terlebih dahulu. PM2 dapat diinstal melalui NPM atau Yarn secara global:
npm install pm2@latest -g
atau
yarn global add pm2
Memastikan daemon PM2 berjalan
pm2 ping
Pastikan telah menginstal Node.js dan NPM sebelum menjalankan perintah di atas.
Memulai Aplikasi
Perintah paling dasar dan paling sering digunakan adalah pm2 start untuk menjalankan aplikasi:
pm2 start app.js
PM2 secara otomatis akan mendeteksi jenis interpreter berdasarkan ekstensi file .
Cluster Mode
Untuk aplikasi Node.js, PM2 memiliki fitur Cluster Mode yang dapat melakukan load balancing di semua CPU yang tersedia.
Menjalankan aplikasi di semua CPU
pm2 start app.js -i max
Menjalankan dengan jumlah instance tertentu
pm2 start app.js -i 4
Menambah jumlah instance di cluster mode
pm2 scale <app> +3
Cluster mode memungkinkan aplikasi berbagi port server secara otomatis melalui modul cluster Node.js, meningkatkan performa dan keandalan aplikasi secara signifikan.
Mengelola Proses
PM2 menyediakan perintah-perintah untuk mengelola status aplikasi.
Menghentikan proses
pm2 stop app_name
Memulai ulang proses
pm2 restart app_name
Reload tanpa downtime.
pm2 reload app_name
Menghapus proses dari daftar PM2
pm2 delete app_name
Menampilkan informasi detail tentang proses
pm2 describe <id>
Mereset metadata (jumlah restart, dll)
pm2 reset <process>
Melihat Daftar Aplikasi
Untuk melihat status semua aplikasi yang dikelola PM2.
pm2 list
atau
pm2 ls
atau
pm2 status
Menampilkan Log
Log aplikasi secara real-time.
pm2 logs
Log dengan jumlah baris tertentu.
pm2 logs --lines 200
Melihat log aplikasi tertentu.
pm2 logs app_name
Mengosongkan semua file log
pm2 flush
Reload semua log
pm2 reloadLogs
Dashboard Terminal
PM2 menyediakan dashboard real-time untuk memonitor CPU, memory, dan metrik lainnya langsung dari terminal.
pm2 monit
Menyimpan Daftar Proses
Untuk menyimpan daftar proses yang sedang berjalan agar dapat di-restore nanti.
pm2 save
Startup Script
Untuk membuat PM2 berjalan otomatis saat server boot/reboot.
pm2 startup
Perintah ini akan menghasilkan script startup yang dapat dijalankan agar PM2 dan aplikasi-aplikasi tetap berjalan setelah server restart.
Ecosystem File
Untuk aplikasi yang lebih kompleks dengan banyak konfigurasi, PM2 menyediakan Ecosystem File :
pm2 ecosystem
Perintah ini akan menghasilkan file ecosystem.config.js .
Kemudian jalankan dengan.
pm2 start ecosystem.config.js
Kesimpulan
PM2 adalah alat yang sangat powerful untuk manajemen proses di production.
Dengan menguasai perintah-perintah dasar yang telah dijelaskan di atas, kamu dapat dengan mudah mengelola aplikasi, memantau performa, dan memastikan aplikasi tetap berjalan dengan stabil.
Mulai dari pm2 start untuk menjalankan aplikasi, pm2 list untuk melihat status, hingga pm2 startup untuk konfigurasi boot, semua perintah dirancang untuk memberikan pengalaman manajemen proses yang sederhana dan efisien.
