特徵:
自動發現PM2管理的Node.js進程。
報告Nodes.js進程狀態、CPU佔用率、記憶體佔用率以及進程是否重新啟動。
監控PM2守護程式自身狀態、資源佔用和PID改變。
已提供易於安裝的Zabbix監控項範本。
1.Node.js伺服器安裝pm2-zabbix
npm install -g pm2-zabbix
測試自動發現功能是否正常:
pm2-zabbix --discover2.克隆程式碼git clonehttps://github.com/greatcare/pm2-zabbix.git3.Zabbix Web管理後台導入範本檔案pm2-zabbix/install/zabbix-server/pm2-zabbix.template.xml
4. Node.js伺服器新增服務,依照伺服器作業系統版本選擇,並修改服務執行使用者和使用PM2啟動的Node.js使用者一致
RHEL/CentOS 7系列:
{ "data": [ { "{#PROCESS_ID}": "qb_node-0", "{#PROCESS_NAME}": "qb_node" }, { "{#PROCESS_ID}": "qb_node-1", "{#PROCESS_NAME}": "qb_node" }, { "{#PROCESS_ID}": "qb_node-2", "{#PROCESS_NAME}": "qb_node" }, { "{#PROCESS_ID}": "qb_node-3", "{#PROCESS_NAME}": "qb_node" } ] }
修改目標檔案.service 檔案內容User項目:
User=root
RHEL/CentOS 6或5系列:cp pm2-zabbix/install/init/systemd/pm2-zabbix.service /usr/lib/systemd/system/
US
新建軟連接,依照自己伺服器修改軟體連線指向的真實檔案路徑cp pm2-zabbix/install/init/sysv/pm2-zabbix /etc/init.d/
6.啟動pm2-zabbix 服務
RHEL/CentOS 7系列:A7M5 月f fHEL
或5系列:service start pm2-zabbix7.修改Zabbix Agent設定檔zabbix_agentd.conf,新增包含其它配置mkdir -p /etc/zabbix ln -s /App/zabbix/etc/zabbix_agentd.conf /etc/zabbix/zabbix_agentd.conf ln -s /App/zabbix/bin/zabbix_sender /usr/bin/zabbix_sender ln -s `which node` /usr/bin/node ln -s `which pm2-zabbix` /usr/local/bin/pm2-zabbix🜎bb 9.修改配置pm2.conf 內容sudo -u 用戶和第4步一致,同事修改pm2-zabbix 路徑
Include=/App/zabbix/etc/zabbix_agentd.conf.d/*.conf10.伺服器終端執行程式visudoudo .js伺服器Zabbix Agent服務
cp pm2-zabbix/install/zabbix-agent/pm2-zabbix.conf /App/zabbix/etc/zabbix_agentd.conf.d/pm2.conf12.Zabbix Web管理後台設定Node.js伺服器新增連結Template App PM2 NodePM2守護程式CPU使用率PM2守護程式記憶體PM PM2管理的Node進程實例記憶體佔用