有没有办法在该主机组的第一个(或至少一个)成员上线时创建Nagios hostgroup
?
我尝试使用Puppet Storeconfigs
:客户端节点导出nagios_hostgroup
资源:
@@nagios_hostgroup { 'cloud-app':
alias => "Application Servers",
}
并且服务器节点收集它:
Nagios_hostgroup <<| |>> { notify => Service['nagios'] }
它适用于第一个节点,但只要该主机组的第二个节点联机并尝试导出相同的资源,就会出现“重复定义”错误。
在Nagios服务器清单中指定hostgroup
(并导出nagios_host
)最初解决了这个问题,但这种方法的最大问题是:在多主机组配置中,Nagios将无法启动来自每个主机组的至少一个成员上线。这给我们带来了巨大的不便。由于所有主机组都是在Nagios服务器配置期间创建的,因此Nagios在配置最后一个主机组的第一个成员之前拒绝启动。对我们来说,最多需要30分钟。针对此问题是否有解决方法/修复方法?任何指针都将非常感激。干杯!!
答案 0 :(得分:-1)
它比这更简单:你可以简单地要求Nagios不要抱怨没有成员的主机组。如this thread中所述,从Nagios 3.3.1开始,您可以在主配置中使用allow_empty_hostgroups_assignment = 1指令来启动Nagios。在3.4.0及更高版本中,这些绑定中也允许使用servicedependencies。