我有3台机器,所有远程IP地址,所有这些地址都使用远程和本地IP地址运行nsclient ++:
46.*.*.1/192.168.1.1 46.*.*.2/192.168.1.2 46.*.*.3/192.168.1.3
我想让nagios / icinga远程ping其他本地机器,看看VLAN是否工作正常。
有没有办法告诉nagios / icinga使用机器192.168.1.1和ping 192.168.1.2和192.168.1.3? check_ping只能ping从icinga服务器的host_name中定义的机器。 Icinga是完全不同的IP范围92.*.*.*
有没有办法做到这一点看到VLAN工作正常?
在使用nsclient ++时,我假定这些是Windows主机,而其他远程执行选项(例如push_check )不可用。 但是,nsclient ++具有内置的自己的远程执行。 详细信息请参见: http ://www.nsclient.org/nscp/wiki/CheckExternalScripts,例如,在nsclient ++configuration中,包括
[External Scripts] ping_remote=.\scripts\ping.bat $ARG1$
以及nsclient ++文件夹下的简单batch filescripts \ ping.bat:
ping %1
如果主机可达,则代码0(Nagios“OK”)退出,如果不是,则代码1(Nagios“Warning”)。 你可以build立一个更复杂的批处理脚本来做一些更清晰的输出。
Nagios的NRPE检查可以触发这个脚本。 定义一个命令如下:
define command { command_name check_ping_remote command_line check_nrpe -H $HOSTADDRESS$ -p 5666 -c ping_remote -a $ARG1$ }
然后从主机configuration中为其中一台主机启动:
define service{ host_name your_host_name service_description Ping VPN check_command check_ping_remote!192.168.1.2 use generic-service }