我想知道你是否有经验或有关如何大规模build立nagios的任何想法。
以前我们使用nagios和nagiosql进行手动设置,对于less数几台服务器来说,这是相当舒服的。
最近服务器的数量已经改变,由nagiosql手动configuration变得不舒服。 我们使用厨师开始新的实例,我想知道是否有好的做法,一起使用厨师和nagios。 作为一种select,我们每次启动新实例时,只能使用nagios并重写nagios的configuration文件(基于服务器angular色)。
例如,情况可能是这样的,已经开始新的MySQL服务器,有一个专门的改写nagios设置文件的配方。 食谱可以从每个服务器获取厨师数据包的所有数据,并根据厨师angular色构build设置。
在过去的18个月中,我使用Chef实现了三种略有不同的Nagios监控解决scheme。 它们都是基于Chef的模板资源,使用ERB语法生成configuration文件,这一点非常好。 您有一个Ruby数组或主机和服务的哈希,并生成Nagiosconfiguration文件。 testing和debugging相当简单。
nagios_hosts和一个nagios_services数据包,每个主机有一个关键字,说明哪些服务检查得到运行,例如check_load , check_disk 。 这个设置很快就可以开始,并且工作得很好,但是如果主机被删除或者添加了新的,那么必须有人来更新数据包。 在实践中很容易忘记这一点,事情可能会过时,这可能会导致麻烦。 所以在经历了所有这些之后,我可能会推荐使用类似于选项#2的方法来处理小(几十到几百个)节点。 我会尽量保持简单。 我使用了Chef的属性系统来定义和覆盖基于angular色的服务检查的阈值,并且它的工作方式太复杂了,而且食谱已经变成了难以维系的混乱。
祝你好运!