在我们的办公室,我们设置了双 WAN,如果我们的有线连接断开,我们仍然可以通过 T1 获得连接。唯一的问题是我们的办公室网络不再在同一 IP 上可用,因此所有 Nagios 检查都变得至关重要,因为它们无法连接。
如果我可以让 Nagios 默认尝试 IP 1,但如果由于某种原因它在该 IP 上失败,则尝试 IP 2,那就太棒了。
我怀疑默认安装是否能实现这一点,但我想知道是否有任何附加组件或其他魔法可以实现这一点?
答案1
我使用 check_multiaddr 插件:
http://exchange.nagios.org/directory/Plugins/Others/check_multiaddr/details
在我的环境中对多宿主服务器执行检查。一些服务器在多个 VLAN 中有多个接口(用于流量分段)。DNS 中只有一个接口,因此在 Nagios 配置中使用主机名对我来说不适用。我最初从具有单独 IP 的多个主机定义(host-a、host-a-vlan1)开始,但事实证明这很麻烦。
我稍微修改了 check_multiaddr,如果任何接口关闭,就会抛出 CRITICAL,因为默认值(只要一个接口启动就可以)不符合我的场景。
答案2
在异地 Nagios 服务器和办公室 LAN 之间配置主 VPN 隧道和备份 VPN 隧道。让 Nagios 使用私人的使用可用的 VPN 隧道,确定每个 VPN 隧道的 IP 地址。配置 VPN 端点的依赖关系,这样如果两个 VPN 链路都断开,服务检查将变为“未知”而不是“关键”。
答案3
只需做一点工作(或者做很多工作,如果您的系统很大),您可以将每个检查放入包装器检查脚本中,该脚本在两个可能的地址上测试相关的服务。