Nagios中用於nrpe的啟動管理腳本
阿新 • • 發佈:2017-09-23
nagios nrpe
最近一段時間應為需要大量的調整修改Nagios的監控策略所以需要反復的重啟nrpe,但是在Nagios安裝後是沒有提供nrpe的啟動腳本,所以就自己順手寫了一個用於平時nrpe的重啟:
#!/bin/sh #The startup script for nrpe #Author:jim #processname:nrped # chkconfig: 2345 97 03 #description:This is a daemon used for nrpe startup management in Nagios #source functions library if [ -f /etc/rc.d/init.d/functions ]; then . /etc/rc.d/init.d/functions elif [ -f /etc/init.d/functions ]; then . /etc/init.d/functions elif [ -f /lib/lsb/init-functions ]; then . /lib/lsb/init-functions fi prefix="/usr/local/nagios" nrpe_bin="${prefix}/bin/nrpe" nrpe_config_file="${prefix}/etc/nrpe.cfg" nrpe_num=$(ps aux | grep /bin/nrpe | grep -v grep | wc -l) nrpe_pid=$(ps aux | grep /bin/nrpe | grep -v grep | awk ‘{print $2}‘) RETVAL=0 start() { if [ $nrpe_num -eq 1 ];then echo_warning echo "nrpe is running " else ${nrpe_bin} -c ${nrpe_config_file} -d echo_success echo "Starting nrpe " fi } stop() { if [ $nrpe_num -eq 1 ];then kill -9 $nrpe_pid echo_success echo "Starting nrpe " else echo_failure echo "nrpe is stoping " fi } restart() { if [ $nrpe_num -eq 1 ];then kill -9 $nrpe_pid echo_success echo "Stopting nrpe " ${nrpe_bin} -c ${nrpe_config_file} -d echo_success echo "Starting nrpe " else echo_failure echo "nrpe is stoping " ${nrpe_bin} -c ${nrpe_config_file} -d echo_success echo "Starting nrpe " fi } case $1 in start) start ;; stop) stop ;; restart) restart ;; *) echo_failure echo "Usage: $0 {start|stop|restart}" RETVAL=2 esac exit $RETVAL
總之來說還是比較簡單的,其中有使用到系統的functions,可以參看:http://jim123.blog.51cto.com/4763600/1900432,其中要註意的一點是,把文件上傳至/etc/init.d目錄後需要授予執行權,然後用chkconfig加入系統中使service能管理到,如果是Linux/Centos 7的系統還要使用systemctl daemon-reload重載一次:
[[email protected] init.d]# chmod +x nrped [[email protected] init.d]# chkconfig --add nrped chkconfig --list nrped systemctl daemon-reload[[email protected] init.d]# chkconfig --list nrped nrped 0:關閉 1:關閉 2:啟用 3:啟用 4:啟用 5:啟用 6:關閉 [[email protected] init.d]# /etc/init.d/nrped restart Stopting nrpe [確定] Starting nrpe [確定] [[email protected] init.d]# service nrped restart Stopting nrpe [確定] Starting nrpe [確定]
本文出自 “Jim的技術隨筆” 博客,謝絕轉載!
Nagios中用於nrpe的啟動管理腳本