在 zabbix 服务器上创建一个 Zabbix 项目,用于 ping 运行 vm(带代理)的无代理主机

在 zabbix 服务器上创建一个 Zabbix 项目,用于 ping 运行 vm(带代理)的无代理主机

我们正在使用 Zabbix (2.4.7),我将其称为 zabbix 服务器。zabbix 服务器监控着许多机器。这些机器上安装了 zabbix 代理。

这些机器实际上是虚拟机。我们想 ping 虚拟机正在运行的主机。虚拟机正在运行的主机没有安装 zabbix 代理,我们无法访问这些主机。

Zabbix 服务器可以 ping 地址为 192.168.15.10 的虚拟机。运行虚拟机的主机的 IP 地址为 192.168.15.5。IP 的第三象限随虚拟机而变化,但虚拟机始终位于 .10 地址,而主机始终位于 .5 地址。

我们想要创建一个触发器,如果​​主机可以 ping 通但虚拟机不能,则发出警报。

我可以创建 ping 虚拟机的项目,但如何创建 ping 主机的项目?我想将其添加到模板中,而不是为每个主机添加一个项目,因为我们有许多虚拟机。

编辑

以下是更清晰的描述:

该图显示 zabbix 服务器连接到两个虚拟机,但未连接到虚拟机运行的主机

  1. 我们设置了自动发现规则来查找新虚拟机。因此,zabbix 服务器已自动检测到虚拟机 192.168.15.10 和 192.168.16.10。
  2. 由于主机上未安装 zabbix 代理,因此 Zabbix 不了解主机 192.168.15.5 和 192.168.16.5。
  3. 新的 vms 被添加到 zabbix,并且正确的模板被附加到新的 vms。
  4. 我们可以 ping 虚拟机以确保它已启动。
  5. 因此,zabbix 中有两个主机的条目。

我们现在如何创建一个模板,可以在自动发现期间轻松地将其添加到每个新虚拟机中,其中模板有一个在 .5 地址上 ping 主机的项目,一个在 .10 地址上 ping 虚拟机的项目,以及一个触发器来表示“如果主机可 ping 而虚拟机不可 ping,则触发警报”?

据我所知,没有办法设置 zabbix 项目来:

  1. 使用虚拟机 IP 地址
  2. 删除 .10
  3. 添加 .5
  4. 现在使用项目中的这个新地址来 ping 它

答案1

显然主机原型可以解决这个问题,但我无法理解主机原型,所以采取的方法是使用外部检查

  1. 创建一个 zabbix 可以针对所有 vm 运行的 bash 脚本
  2. Bash 脚本将虚拟机 IP 地址作为参数
  3. Bash 脚本修改 IP
  4. ping 修改后的 ip
  5. 结果记录为一个项目
  6. 已有一个针对虚拟机的 ping 项目
  7. 创建触发器来检查新项目和现有 ping 项目,以便在主机可 ping 通而虚拟机不可 ping 通时进行捕获和警报

相关内容