32423223 发表于 2016-10-11 08:38:30

zabbix使用ifstat工具来自定义获取网卡流量

1、获取ifstat

1
2
3
4
5
6
wget http://distfiles.macports.org/ifstat/ifstat-1.1.tar.gz
tar xf ifstat-1.1.tar.gz
cd ifstat-1.1
./configure
make && make install
ln -s /usr/local/bin/ifstat /sbin/




2、自定义监控脚本
vim networkflow.sh

1
2
3
4
5
6
7
8
9
#!/bin/bash
case $1 in
      inflow)
                ifstat -i eth01 1 | sed -n '3p' | awk '{print $(NF-1)}'
      ;;
      outflow)
                ifstat -i eth01 1 | sed -n '3p' | awk '{print $(NF)}'
      ;;
esac




我这里是在脚本里面指定网卡eth0的,大家做的话可以稍微改善一下这个脚本,然后自动化获取需要监控的网卡名称。 inflow代表网卡的入口速率,outflow代表出口速率。

1
2
chmod a+x networkflow.sh
cp networkflow.sh /usr/local/zabbix_agentd/defineScripts/




这里说一下,/usr/local/zabbix_agentd/defineScripts这个目录是我服务器上面放置自定义脚本的目录。

3、自定义zabbix的key

vim /usr/local/zabbix_agentd/etc/zabbix_agentd.userparams.conf
底部添加一段:

1
2
#check network flow
UserParameter=network_flow[*],/usr/local/zabbix_agentd/defineScripts/networkflow.sh $1




/usr/local/zabbix_agentd/etc/zabbix_agentd.userparams.conf 这个文件是我在/usr/local/zabbix_agentd/etc/zabbix_agentd.conf中Include进去的,单独作为一个存放自定义key的地方。

然后重启zabbix_agentd,这个自定义的key就生效了。

4、zabbix server UI使用此key
这个可以添加到已有的模板里面,或者新建一个模板都可以的。
建立item



建立trigger


建立graphs


我这边只是已入口流量为例

5、应用到hosts上面


上面就是效果图

搞定!

页: [1]
查看完整版本: zabbix使用ifstat工具来自定义获取网卡流量