我正在尝试在 Nagios 核心 4.x 中安排和取消停机时间。
我可以使用以下 cmd 为主机安排停机时间:
curl --silent --show-error --data cmd_typ=55 --data cmd_mod=2 --data host=automichost1 --data "com_data=Updating+application" --data trigger=0 --data "start_time=05-15-2016 19:00:00" --data "end_time=05-15-2016 19:15:00" --data fixed=1 --data btnSubmit=Commit --insecure http://localhost:80/nagios/cgi-bin/cmd.cgi -u "nagiosadmin:XXXXXX"
此 cmd 不返回生成的停机 id,而只是返回一个 html 文件。
但要取消计划停机时间,我需要使用以下
curl --silent --show-error --data cmd_typ=78 --data cmd_mod=2 --data down_id=2 --data "com_data=Updating+application" --data btnSubmit=Commit --insecure http://localhost:80/nagios/cgi-bin/cmd.cgi -u "nagiosadmin:xxxxxxx"
在这里我需要 down_id 来取消停机时间。在自动化脚本中,无法从任何 nagios 外部命令获取此停机时间 ID。我还尝试了http://docs.icinga.org/latest/en/cgiparams.html CMD_DEL_DOWNTIME_BY_HOST_NAME 171上提到的以下外部命令
但这在 Nagios 上不起作用并给出消息“对不起,但您无权提交指定的命令。”。
我现在被卡住了,无法前进。有谁知道如何实现这一点?