因为主机托管,很多机器都要全面监控起来,当然这肯定少不了伟大的snmp服务,但是在操作系统版本不一致的情况下,其snmpd服务也会出现一些异常,比如“Connection from - 222.124.129.122,transport socket = 14”,前面有篇文章提到如何解决“transport socket = 12”的问题,如果出现“transport socket = 14”的问题,只要能正确获得snmp的信息,可以先不理会(目前还没有找到解决办法),但是日志都会被这种错误塞满,有时候甚至snmpd服务自动退出,为了能够顺利取得监控主机的运行状态,我们对有异常的snmpd服务进行有效的监控,监控脚本如下:
#!/bin/bash
testing=`netstat -puln | grep ":161 "`
if [ "$testing" = "" ]; then
/etc/init.d/snmpd start
echo "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~>" >> /var/log/check_snmpd.log
echo snmpd start at [`date +"%Y-%m-%d %H:%M:%S"`] >> /var/log/check_snmpd.log
fi
exit 0
ok,将这个监控脚本放到crontab里面即可:
*/2 * * * * /usr/local/crontab/snmpd > /dev/null 2>&1
这里为什么要2分钟执行下呢,因为cacti监控程序5分钟获得远程主机的snmp信息一次。
阅读(1625) | 评论(0) | 转发(0) |