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 [确定]
来源: http://www.bubuko.com/infodetail-2320918.html