Zabbix 聚合项目来监控 VPN 连接

问题描述 投票:0回答:1

我正在监控很多服务器,但是一旦 VPN 关闭,Zabbix 就会为每个主机发出多个警报。

我的解决方案是创建一个计算项,如果主机组中的所有主机都已关闭,则使用 foreach 获取“0”。在这种情况下,我会收到一个警报,指出与 X 组的连接已关闭,而不是像现在这样为每个主机发出 200 个警报。

我尝试过这些项目,但没有成功:

 count(last_foreach(/*/agent.ping?[group="HOSTGROUP-A"]))

 nodata(last_foreach(/*/agent.ping?[group="HOSTGROUP-A"]))

我认为这可行,但如果我停止此主机组中所有主机中的 zabbix 代理,它仍然返回 X,而不是 0。

我认为它只是计算分配给每个主机的agent.ping项目,而不是该项目的实际输出。也许是因为如果没有连接,agent.ping 返回 1 或“错误”。

也尝试过“nodata”,但似乎不支持与 _foreach 一起使用

尝试过计数/总和。 其他操作员给出错误。

foreach vpn monitor zabbix
1个回答
0
投票

您应该使用触发依赖项

有时一台主机的可用性取决于另一台主机。一台服务器 如果路由器发生故障,路由器后面的那个将变得无法访问 向下。为两者配置触发器后,您可能会收到通知 大约有两台主机宕机 - 而只有路由器是罪魁祸首 虽然 Zabbix 不直接支持主机之间的依赖关系, 它们可以用另一种更灵活的方法定义 - 触发器 依赖关系。一个触发器可能有一个或多个它所依赖的触发器。 [..] 因此,在我们的简单示例中,我们打开服务器触发器配置表单 并设置它取决于路由器各自的触发器。和 这种依赖性,只要服务器触发器不会改变其状态 因为它所依赖的触发器处于“问题”状态 - 因此没有 将采取相关操作并且不会发送任何通知。

您可以手动设置依赖项,或通过使用 trigger api

的脚本设置依赖项
© www.soinside.com 2019 - 2024. All rights reserved.