如何管理大型集群上的Nagios依赖关系?


8

我使用的是相当大的nagios配置(约4000个服务),没有任何依赖关系。当出现问题时,这会导致大量的通知混乱。

我试图通过Nagios Dependencies寻找最佳实践,但是我在网上发现的只是一个简单的例子而已。我需要的是更深入的信息,以及有关如何管理此类配置文件的最佳实践。

示例:在包含100个服务器且每个服务器都监听apache的群集上,我正在监视apache进程和监听TCP端口80的数量。我想使一个依赖于另一个,但是dependent_hostgroup_name不能解决问题导致所有“检查过程”服务都依赖于每个“ check_http”服务。

问题是:如何管理依赖性?您是否使用脚本来生成它们?


1
这家伙有同样的问题:dimmeria.com/node/1804 我看来,脚本/模板是唯一的办法:(我希望有人做了我面前,所以我不会有。
法尔肯

Answers:


2

同意没有脚本很难做到这一点。

对于每个服务检查命令,我已经在db表中定义了它通常依赖的内容,这使我不必手动配置每个服务依赖项。主机依赖关系我手工完成,但是通过脚本在交换机上进行mac地址发现可以帮助实现自动化。

例子:

“ check_http_content”将取决于“ check_http”,其将取决于“ check_ping”。
“ check_cisco_ifstate”将取决于“ check_snmp_ok”,这将取决于“ check_ping”

如果您使用脚本从数据库构建配置,则实现起来并不难。否则,您将需要编写一个解析器来遍历您的配置文件,并根据规则插入依赖项。

我无法想象没有任何可配置的nagios实现,而没有从中构建配置的配置数据库,它可以在nagios缺乏抽象的情况下添加自己的抽象,并通过许多其他方式简化工作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.