我目前无法在 Nagios/Icinga 中监控使用动态 IP 地址的目标机器的正常运行时间。网络使用 Windows 域控制器进行 DNS,Icinga 服务器在网络内的 Ubuntu 机器上运行。
手动运行“check_ping”命令时出现以下错误:
> ./check_ping -H somehost -w 10,1% -c 20,2%
check_ping: Invalid hostname/address - somehost
当我运行“ping”时,它起作用了:
> ping somehost
PING somehost.local (192.168.0.206) 56(84) bytes of data.
64 bytes from somehost.local (192.168.0.206): icmp_req=1 ttl=128 time=0.215 ms
如何启用使用动态 IP 的主机监控?
答案1
由于您的 AD 域(不幸)使用“.local”作为 DNS 后缀,因此您可能与 mDNS(又名 zeroconf、bonjour 等)存在冲突。
Ubuntu 默认安装/启用了 Avahi mDNS。您可能必须禁用(通过 nsswitch)或删除 avahi 软件包,以允许 .local DNS 名称的非 mDNS 主机解析。
此外,您可能想使用 check_icmp 而不是 check_ping,因为它的速度大约快 10 倍。
答案2
尝试以下方法:
./check_ping -H somehost.local -w 10,1%-c 20,2%
答案3
一个建议更多的是一种解决方法,而不是针对您的具体问题的回答。
您的网络上的 DHCP 服务器是什么?也许为“somehost”设置保留/静态 IP,然后使用带有 IP 而不是主机名的 check_ping 脚本是一个好主意。
事实上,出于测试目的,check_ping 是否适用于 ip rathar 而不是主机名?
答案4
您需要的是从 DHCP 服务器到 DNS 服务器的动态更新,这样主机 A 记录无论分配了什么 IP 地址,都将始终获得相同的名称。然后您的“check_ping -H host-name”将始终指向正确的地址。
抱歉,我不知道这在 Windows DHCP/DNS 中是如何工作的。