年前很长时间都在鼓弄cacti+nagios,完善我们的监控报警系统,并在在田老师的指导下,对监控系统又有了跟多的认识,其实,监控系统不单单仅仅为了发现故障,它还可以为我们的许多项目实施提供资源,运维的很多事情都可以围绕它来展开,可谓ALL IN ONE。目前,还是主要采用cacti+nagios的组合,cacti提供历史记录和趋势走势,nagios主机和服务的故障报警,当随着主机的增多,各应用监控项的不断增加,cacti和nagios都将会面临性能问题,由于指定时间内扫描率的下降,cacti就会出现超时断图的问题,nagios的报警将被延迟甚至漏发。在经历的诸多问题之后,在田老师的推动下,我们决定重新选择一款适合大规模监控报警的系统,经过综合比较之后,未来的时间里我们将把主要精力放在zabbix的学习和研究上。
在cacti和nagios的使用中,我们都有一种体会,那就是添加监控主机的问题,当机器数据很多时,其实超过10台,我们就会很无聊了,不想让这样重复的体力劳动耗费我们大量的时间。cacti添加有界面的看似和蔼了许多,但是加一台机器进去你也要点大概7-8下,还不算你要手敲的;nagios多数我们都要手动编辑我们的监控主机和应用服务的cfg文件,更是可怕的事情,应该还记得members那行吧。在被折磨了一段时间后,在田老师的鼓励下,我不能再懒了,必须要通过脚本实现自动批量化,于是就产生了下面两个关于如何批量向cacti和nagios添加主机的脚本,肯能你会觉得,这些脚本还是不是很灵活,多数都是基于我工作的需求写的。
Cacti批量添加脚本
脚本描述:使用cacti目录cli下自带的php脚本,再通过shell脚本将其组合模拟我们手动添加主机的过程。监控模板使用google上提供的一个非常丰富的模版better-cacti-templates,包括mysql、apache、nginx等。当你在使用我的脚本前,请先阅读README,有些提示你还是需要注意的:)
P.S: Cacti的安装文件比较多,所以之前希望通过YUM都可以搞定,但是安装好以后,添加的主机也可以出图,但是log里面总会有一片一片的红色区域,烦人的“Duplicate entry”,其实这是一个BUG,折腾了我很久很久,几乎要崩溃了,尝试去改spine源码里面的东西,始终得不到解决,最后放弃0.8.7g的这个最新的版本,测试过程中还发现新版的cacti在图的展示上没有以前的版流畅。
Nagios批量添加脚本
脚本描述:该脚本其实就是一个根据自己平时添加报警主机和服务的需要定制的一个模板;一共有两个,一个是host相关的,另一个是service相关的。 同时,也请大家仔细阅读README里面的提示,以便顺利运行该脚本。