从 Zabbix 聚合项目数据?

Aggregate item data from Zabbix?

我想让 Zabbix 监控不同的项目(在同一台主机上,或在不同的主机上)并根据结果分配一个值,然后让它根据这些聚合触发(或不触发)触发器值。

例如,让我们想象一个由 3 个数据库节点组成的集群。 Zabbix 通过 ping 监控它们中的每一个,如果节点可访问,则将全局变量增加 1。一轮后,变量可能有以下值:

然后 Zabbix 在值为 1 时触发严重性为 WARNING 的触发器,在值为 0 时触发严重性为 HIGH 的触发器。

有没有一种方法可以在本机或通过模块执行此操作,而无需使用 API?谢谢。

要将多个项目的数据聚合为一个,您可以使用 aggregate items or calculated items。聚合项允许聚合指定主机组中具有相同键的所有项,而计算项允许基于公式对项进行任意操作。

为了让两个触发器具有不同的严重性,您可能会发现 trigger dependencies 很有用。在这里,具有较低依赖性的触发器将依赖于具有较高依赖性的触发器。

谢谢。按照你的建议,我设法做了我想做的事。以下是步骤:

  1. 创建主机组 my_DB_cluster 并使用节点的 IP 地址填充它;
  2. 创建新模板my_template并将其添加到主机组my_DB_cluster;
  3. 在 my_template 中,使用键 grpsum[my_DB_cluster,icmpping,last,0] 创建一个新项目;
  4. 创建一个新的值映射并将其关联到项目的结果,以获取消息 ("cluster is down") 而不是简单的值 (0);
  5. 在 my_template 中,在键 grpsum[my_DB_cluster,icmpping,last,0].
  6. 上创建具有不同严重性的触发器