使用 Zabbix 在 openstack 中的私有 IP 上监控 VNF 运行

Using Zabbix monitor a VNF running on a private IP in openstack

我已经在私有网络的 openstack using openbaton 上部署了一些 VNF。我附上了openstack的网络拓扑截图。


现在我想使用 zabbix 监控这些 VNF。为了在 ssh 进入 IP 为 10.0.0.3 的 VNF 后执行此操作,我在其上安装了 zabbix-agent 并更改了其配置文件中的 ServerActive=<zabbix-server-IP-address> 以允许自动注册 zabbix-agent。相应的,我也在zabbix-server上添加了一个Add Host&Link to templates的动作

但是在这样做之后,在 zabbix-server 的主机列表中,我得到一个条目 <openstack-IP-address>:10050,错误消息为
Get value from agent failed: cannot connect to [[<openstack-IP-address>]:10050]: [111] Connection refused

我认为这是因为 zabbix-agent 正在侦听 VNF(在专用网络上)内的端口 10050。 <openstack-IP-address>.

上没有 zabbix-agent 监听 10050 端口

我应该怎么做才能让zabbix-server识别到VNF里面的zabbix-agent运行?

您可能想要使用活动项——即代理连接到服务器的模式。您已经使用了主动代理自动注册。

为此,完整克隆默认模板并将所有这些实体更改为活动:

  • LLD 规则
  • LLD 项目原型

然后将您的操作修改为 link 克隆的模板,以及 "unlink & clear" 之前 link 编辑的模板。

您是否能够从 zabbix 服务器通过 telnet 端口 10050 连接到 VNF?

最初 zabbix-server 安装在外部服务器上。 这就是为什么它无法访问(ping / telnet)专用网络上的 VNF。 为了解决这个问题,我在同一专用网络上的 VNF 本身上安装了 zabbix-server。通过这样做,zabbix-server 能够监控安装在其他 VNF 上的 zabbix-agents。