从 zabbix 代理 ping 外部主机

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

我们正在运行典型的 zabbix 服务器设置。一台 zabbix 服务器和几台安装了 zabbix 代理并由 zabbix 服务器监控的 Linux 服务器。然而,我的问题是有一种方法可以检查 linux_host A 到 linux_host B 之间的 ping (也许是 icmppingsec?:confused:) 并将结果输出到来自 linux_host A 的 zabbix 服务器??

我尝试过简单的检查

icmppingsec[<target>,<packets>,<interval>,<size>,<timeout>,<mode>]
但是我发现ping是由zabbix服务器本身而不是主机A执行的。

感谢您的帮助!

external ping agent zabbix
3个回答
5
投票

找到了添加此用户参数的解决方案:

UserParameter=chk.fping[*],sudo /usr/bin/fping -c 3 $1 2>&1 | tail -n 1 | awk '{print $NF}' | cut -d '/' -f2

由于创建SOCKET时出错,在/etc/sudoers中添加权限。

zabbix ALL=(ALL) NOPASSWD:/usr/bin/fping

在模板中,您可以添加您想要 ping 的项目。

chk.fping[8.8.8.8]


2
投票

目前,不支持通过 Zabbix 代理 ping 主机的功能,但有一个功能请求:ZBXNEXT-739。同时,您应该在执行 ping 操作的代理上添加一个用户参数。


0
投票

我找到了一种从 zabbix 代理获取 ping 延迟的方法,以便 ping 外部主机。我向zabbix_agentd.conf声明了这个参数

UserParameter=key_name[*],fping -e x.x.x.x | awk '{ print $4 }' | tr -d '('

仅输出响应时间,数值。我的下一个问题是如何使 zabbix 服务器可读此命令,以便可以通过图形查看它。在 zabbix 服务器上,输出为 “无数据”,但在 Hosts > Items 下,它为绿色并已启用。

感谢您的帮助!

© www.soinside.com 2019 - 2024. All rights reserved.