Zabbix使用ICMP ping监控网络状况

简述:

Zabbix在监控网络的时候需要查看ping包的丢失率和响应时间,而zabbix模块也有改模块,名称为: Template Network ICMP Ping。监控项如下图:

在这里插入图片描述

如果没有安装fping的话,使用该模块的服务端或代理端日志会出现如下报错:/usr/sbin/fping: [2] No such file or directory。解决的方法就是在服务端或代理端安装fping。

fping安装

1,下载fping并源码安装

[root@HTD-CATIT install]# wget http://www.fping.org/dist/fping-4.0.tar.gz
[root@HTD-CATIT install]# tar xf fping-4.0.tar.gz
[root@HTD-CATIT install]# cd fping-4.0
[root@HTD-CATIT fping-4.0]# ./configure --prefix=/usr/local/fping/
[root@HTD-CATIT fping-4.0]# make && make install

2,修改fping权限

[root@HTD-CATIT fping-4.0]# chown root:zabbix /usr/local/fping/sbin/fping
[root@HTD-CATIT fping-4.0]# chmod 4710 /usr/local/fping/sbin/fping

3,修改zabbix_server.conf或zabbix_proxy.conf配

Zabbix监控ping网络延迟可以通过以下几种方法实现: ### 使用ICMP ping监控 Zabbix使用ICMP ping监控网络状态,相关参考链接可查看:Zabbix使用ICMP ping监控网络状况 : https://blog.51cto.com/liqingbiao/2048793?cid=726857 [^1]。 ### 配置fping监测 1. **安装fping命令**: ```bash yum install fping -y ``` 2. **编写配置文件**: 配置文件用于提取延迟并使用zabbix_get调用返回结果。 ```plaintext [root@zabbix_server /usr/local/zabbix/etc/zabbix_agentd.conf.d]# cat userparameter_fping.conf UserParameter=fping.delay[*],fping -p 50 -c 10 $1 2>&1| tail -n 1 | awk '{print $NF}' | cut -d '/' -f2 ``` 其中,`-p` 表示ping包到一个目标的间隔(毫秒),`-c` 表示发送到每个目标的ping数(默认为1) [^2]。 3. **测试配置**: ```bash [root@zabbix_server /usr/local/zabbix/etc/zabbix_agentd.conf.d]# /usr/local/zabbix/bin/zabbix_get -s 192.168.178.130 -p 10050 -k fping.delay[www.baidu.com] ``` 4. **web界面配置**: 在网络模板里创建监控项,之后创建一个图形。由于是从模板里设置的,需要给机器关联这个模板,关联后可在面板中看到监控信息 [^2]。 ### 监控客户端本地网络延时 1. **添加配置**: 在配置文件中添加 `Include=/etc/zabbix/zabbix_agentd.d/` [^3]。 2. **添加脚本**: 使用脚本对服务器所在网络设备通过ping来获取延时数值。 ```bash #!/bin/bash #设置环境变量 PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin" export PATH while getopts "c:i:" opt; do case $opt in c) count=$OPTARG ;; i) ips=$OPTARG ;; \?) ;; esac done tmp_fifofile="/tmp/ping.fifo" mkfifo $tmp_fifofile exec 6<>$tmp_fifofile rm $tmp_fifofile for ((i=0;i<20;i++));do echo done >&6 done for ip in `echo $ips |awk -F'|' '{ for(i=1;i<=NF;i++) {print $i} }'` do read -u 6 { rtt=`ping -c $count $ip |grep rtt |awk '{print $4}' |awk -F'/' '{print $2}'` rtt=${rtt:-'0'} echo $rtt }& echo >&6 done wait exec 6>&- ``` ### 实现IPV6地址延迟监控 可仿照简单的IPV6地址监控方法实现延迟监控。当监控的ipv6地址不通时返回0,同时可配置钉钉进行监控报警。对于延迟监控可按照同样方法编辑或者修改脚本文件 [^4]。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值