zabbix使用fping监控任意两个节点之间的网络质量、丢包率和响应时间

zabbix使用fping监控任意两个节点之间的网络质量、丢包率和响应时间

之前的博文 使用zabbix3.0.4的ICMP Ping模版实现对客户端网络状态的监控 https://www.cnblogs.com/reblue520/p/6832059.html

只能监控zabbix server到zabbix_agent之间的网络情况,不能监控任意两点间的网络情况

此次的方法可以监控任意两点之间的网络情况

需求:
mysql主从之间同步经常会延迟,为了查看是否网络问题,先添加两个节点之间的网络质量,使用fping命令进行丢包检测

1.在从库的zabbix-agent端安装fping
centos6安装如下版本,其他版本可能无法运行

wget http://www.fping.org/dist/fping-3.16.tar.gz
tar zxvf fping-3.16.tar.gz
cd fping-3.16
./configure --prefix=/usr/local/fping/

make && make install

2.添加fping的sudo权限 visudo
zabbix ALL=(ALL) NOPASSWD:/usr/local/fping/sbin/fping

3.修改配置文件客户端配置文件
# vim /usr/local/zabbix_agents_3.2.0/conf/zabbix_agentd.conf

# 丢包率 -p 间隔100毫秒fpint一次,-c 10 表示10次
UserParameter=eus_accountdb_net_loss,sudo /usr/local/fping/sbin/fping -p 100 -c 10 1.1.1.1 2>&1| tail -n 1 | awk -F ' ' '{print $5}'| cut -d '/' -f3 | cut -d '%' -f1

# 优化后的表达式
UserParameter=eus_accountdb_net_loss,sudo /usr/local/fping/sbin/fping -p 100 -c 10 1.1.1.1 2>&1| tail -n 1 |awk -F '/' '{print +$5}'

# 平均响应时间
./fping -p 50 -c 10 1.1.1.1 2>&1| tail -n 1 | awk '{print $NF}' | cut -d '/' -f2


# 添加监控项目

eus_accountdb_net_loss

# 添加触发器
eus accountdb ping loss great than 50%

{account_DB_Master:eus_accountdb_net_loss.last(0)}>50

 

posted @ 2019-05-31 17:54  reblue520  阅读(4925)  评论(2编辑  收藏  举报