我们的日常维修工作需要取消服务。
问题是这些服务有Nagios检查,我们要么进入web界面禁用检查,要么获取电子邮件。
有没有从Windows和/或Linux来宾的命令行中禁用Nagios检查(或通知)并启用它的方法?理想情况下,这将发生在我们正在执行维护的机器上,而不是Nagios服务器本身。
我想禁用通知/检查的预维护和重新启用他们后维护。
发布于 2009-08-26 14:36:59
假设来宾可以到达web界面,下面的命令行应该可以工作:
curl -d "cmd_typ=23&cmd_mod=2&host=[THE HOST]&service=[THE SERVICE]&btnSubmit=Commit" "http://[[NAGIOS SERVER]/nagios/cgi-bin/cmd.cgi"curl -d "cmd_typ=22&cmd_mod=2&host=[THE HOST]&service=[THE SERVICE]&btnSubmit=Commit" "http://[[NAGIOS SERVER]/nagios/cgi-bin/cmd.cgi"根据您的设置,您还可能需要使用-不安全的或-用户的curl选项。
而IIRC,对于服务和主机组来说,cmd_type号是不同的--看看你的浏览器中使用了哪些链接。
发布于 2009-08-26 13:58:05
为此,您可以编辑nagios服务文件,并禁用对此主机上所有服务的检查,就像您在web接口中所做的那样,这需要修改一些选项。
让我们举一个例子,如果您需要禁用机器nibiru中DNS服务的检查,那么禁用主动/被动检查,如下所示。
define service{
host_name nibiru
service_description DNS
...
active_checks_enabled 0 ; set value to 0
passive_checks_enabled 0 ; set value to 0
...
}https://serverfault.com/questions/58966
复制相似问题