Zabbix - 代理的发现规则获取我在 Zabbix 上设置的主机名称作为密钥

Zabbix - 代理的发现规则获取我在 Zabbix 上设置的主机名称作为密钥

我有一个 Zabbix,我想用它来监控我的网络性能。我在 Zabbix 上设置了 16 个 IP(每个 IP 来自我们网络内不同的 /24),我需要监控网络上的特定目标,例如网站、服务等。

我已经创建了监控并且它正在运行,但是,我想将我的项目放在模板上,以在每个需要的主机中创建每个项目(每个 /24 1 个主机,使得 Zabbix 内部有 16 个主机),但是,如果我在一个主机中就有 10 个项目,我将需要创建 160 个项目,这是不可行的。

此场景是接收项目键上的参数,即我想要测试的源地址。目前唯一不可能的事情是,我需要在每个项目上指定源,这将需要大量工作,因此我在 Zabbix 上创建每个主机,并将其命名为我正在使用的 Src IP,因此我想将主机名(即 IP)作为参数传递,从主机名本身发现它。

我尝试使用 ZabbixAgent 发现规则,但没有成功,因为我尝试实现它的方式似乎不正确:

key: down["{HOST.NAME}",http,facebook.com.br]

在发现规则中使用此键以及以下内容:

down["{$HOST.NAME}",http,facebook.com.br]

在项目原型中只是返回错误。

我可以尝试使用一些 JSON 或 LLD,但我确信这是一种简单的方法,可以将此密钥作为动态的,从 Zabbix 的 HostName 读取,同时在其余密钥上使用固定参数。

答案1

您应该能够直接在模板中创建一个项目,如下所示:

down["{HOST.HOST}",http,facebook.com.br]

这样就无需使用 LLD。还请注意 的使用HOST.HOST,它是实际的主机名(而不是可见的名称HOST.NAME)。

相关内容