nagios監控fms(藉助腳本)
修改後的腳本如下(需添加指示燈的狀態)
# vi fms.sh
#!/bin/bash
Port=`netstat -ntpl | grep fmsadmin | grep -v "11110" | awk -F[:" "]+ '{print $5}'`
if [[ $Port == "1111" ]];then
echo "OK - fms is running"
exit 0
else
echo "CRITICAL - fms is down"
if [[ $Port == "1111" ]];then
echo "OK - fms is running"
exit 0
else
echo "CRITICAL - fms is down"
/sbin/service fms restart
exit 2
fi
exit 2
fi
:wq
注:0 指的是狀態燈綠燈,2指的是紅燈,黃燈不用 並且宕了之後再次check時就能自動重啓
# cp fms.sh /usr/local/nagios/libexec
# chmod +x /usr/local/nagios/libexec/fms.sh
# mount /dev/cdrom /media/cdrom
# mount /dev/cdrom /media/cdrom
# rpm -ivh sudo-1.6.9pl7-3.el5.i386.rpm
# visudo
#Defaults requiretty (註釋掉)
nagios ALL=(ALL) NOPASSWD:/usr/local/nagios/libexec/fms.sh (多個腳本的話設置多行)
:wq
# su - nagios -c 'sudo /usr/local/nagios/libexec/fms.sh' (看看執行是否成功)
# vi /usr/local/nagios/etc/nrpe.cfg
command[check_fms]=/usr/bin/sudo /usr/local/nagios/libexec/fms.sh
:wq
# killall nrpe
# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
# vi /usr/local/nagios/etc/objects/ming.cfg
:wq
# su - nagios -c 'sudo /usr/local/nagios/libexec/fms.sh' (看看執行是否成功)
# vi /usr/local/nagios/etc/nrpe.cfg
command[check_fms]=/usr/bin/sudo /usr/local/nagios/libexec/fms.sh
:wq
# killall nrpe
# /usr/local/nagios/bin/nrpe -c /usr/local/nagios/etc/nrpe.cfg -d
# vi /usr/local/nagios/etc/objects/ming.cfg
define service{
use generic-service
host_name ming
service_description fms
check_command check_nrpe!check_fms
notifications_enabled 1
}
:wq
# service nagios restart
use generic-service
host_name ming
service_description fms
check_command check_nrpe!check_fms
notifications_enabled 1
}
:wq
# service nagios restart