2017年5月5日星期五

zabbix fping 网络连通性检测,以及服务器之间的网络检测

我主要使用zabbix的两种监控项类型来做ICMP检测。
监测指标有三种:
 1. 两点之间的可用性  [ 0 , 1]
 2. 两点之间的丢包率  [ 0 -100 %]
 3. 两点之间的响应时间  [ 0 - 3000 ms]



要想完成两台服务器之间链路的状态监控,需要在zabbix agent配置key来完成。
经过google之后,找到zabbix官方论坛的一篇帖子

首先你要保证安装fping,fping这个工具功能强大,zabbix用fping返回数据来监测。

fping强大之处
1. 快速ping包,-p 30,每隔30毫秒就发送一个echo reply包
2. 整个网段搜索存活主机,-a -g 子网,例如: fping -a -g 10.0.0.0/24
3. 通过IP反查域名,fping -a -d 8.8.8.8  (3.0以上的版本才支持)


保证zabbix有权限调用fping
chown root.zabbix /etc/zabbix/fping
chmod 6710 fping
设置好后,权限情况如下:
-rws--s--- 1 root zabbix 54759 Jul 9 14:59 fping
也可以通过/etc/sudoers去配置
zabbix ALL=(ALL) NOPASSWD:/usr/bin/fping

在zabbix_agentd.conf下添加用户参数:
#fping
UserParameter=chk.fping[*],sudo /usr/bin/fping -c 3 $1 2>&1 | tail -n 1 | awk '{print $NF}' | cut -d '/' -f2

如果会报一个timeout的错误,在下面两个配置文件修改timeout值
/etc/zabbix/zabbix_agentd.conf
Timeout=30
/etc/zabbix/zabbix_server.conf
Timeout=30
关于userparameter的含义:点击链接
关于简单检查各个key,各个参数的具体含义:点击链接

简单检查的key - icmppingsec,使用时主要,数据类型是浮点型

附加上常用command的写法:
注意:导入agent配置时,ip要写为$1
packet loss
fping -p 50 -c 4 10.8.1.12 2>&1 | tail -n 1 | awk -F ' ' '{print $5}'| cut -d '/' -f3 | cut -d ',' -f1
fping -p 50 -c 4 10.8.1.12 2>&1 | tail -n 1 | awk '{print $5}'| cut -d '/' -f5 | cut -d ',' -f1

packet avg sec
fping --p 50 -c 4 10.8.1.12 2>&1 | tail -n 1 | awk '{print $NF}' | cut -d '/' -f2



没有评论:

发表评论