1. 程式人生 > 實用技巧 >zabbix使用ifstat工具來自定義獲取網絡卡流量

zabbix使用ifstat工具來自定義獲取網絡卡流量

1、獲取ifstat

wgethttp://distfiles.macports.org/ifstat/ifstat-1.1.tar.gz
tarxfifstat-1.1.tar.gz
cdifstat-1.1
./configure
make&&makeinstall
ln-s/usr/local/bin/ifstat/sbin/

2、自定義監控指令碼

vim networkflow.sh

#!/bin/bash
case$1in
inflow)
ifstat-ieth011|sed-n'3p'|awk'{print$(NF-1)}'
;;
outflow)
ifstat-ieth011|sed-n'3p'|awk'{print$(NF)}'
;;
esac

我這裡是在腳本里面指定網絡卡eth0的,大家做的話可以稍微改善一下這個指令碼,然後自動化獲取需要監控的網絡卡名稱。 inflow代表網絡卡的入口速率,outflow代表出口速率。

chmoda+xnetworkflow.sh
cpnetworkflow.sh/usr/local/zabbix_agentd/defineScripts/

這裡說一下,/usr/local/zabbix_agentd/defineScripts這個目錄是我伺服器上面放置自定義指令碼的目錄。


3、自定義zabbix的key

vim/usr/local/zabbix_agentd/etc/zabbix_agentd.userparams.conf

底部新增一段:

#checknetworkflow
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

wKioL1f7UemQQmcUAAFMuirqF_w259.png-wh_50


建立trigger

wKiom1f7UgqA_l-AAACoR-YByVI085.png-wh_50


建立graphs

wKioL1f7UmOSHqVQAADyMjymj0M057.png-wh_50


我這邊只是已入口流量為例


5、應用到hosts上面

wKiom1f7UzWDi7HiAAU8SSi2SpA035.png-wh_50


上面就是效果圖


搞定!

轉載於:https://blog.51cto.com/zhengmingjing/1860305