zabbix自定义监控网卡流量脚本

zabbix自定义监控网卡流量脚本

2015-11-20 00:09:46

标签:zabbix监控网卡流量

原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://msiyuetian.blog.51cto.com/8637744/1714873

之前写了一篇文章主要介绍zabbix的搭建使用http://msiyuetian.blog.51cto.com/8637744/1705396

下面这篇文章主要介绍zabbix自定义监控网卡流量的脚本实现

前期准备

1、说明

server ip :192.168.0.115

client ip :192.168.0.114

2、开启服务

因为之前搭建过zabbix环境,这里就不重复了,直接开启服务端的所需服务:

[root@server ~]# /etc/init.d/httpd start

[root@server ~]# /etc/init.d/mysqld start

[root@server ~]# /etc/init.d/zabbix-server start

[root@server ~]# /etc/init.d/zabbix-agent start

然后在浏览器输入:http://192.168.0.115/zabbix,输入用户名密码后验证登入到zabbix主界面。

客户端也开启zabbix-agent服务:

[root@client ~]# /etc/init.d/zabbix-agent start

以下命令都在客户端执行

1、修改配置文件

[root@client ~]# vim /etc/zabbix/zabbix_agentd.conf   //改动两个地方

UnsafeUserParameters=1

UserParameter=my.net.if[*], /usr/local/sbin/zabbix/net.sh $1 $2

说明:UserParameter用来自定义键值,(类似于net.if.in),自己写的脚本往往会有参数,所以需要加,这是固定写法,如果脚本压根就没有什么参数,那么这个就省了。逗号后面就是我们写的脚本的路径了,再后面就是要用到的参数,有几个就写几。

2、编写脚本

[root@client ~]# mkdir /usr/local/sbin/zabbix

[root@client ~]# vim /usr/local/sbin/zabbix/net.sh

#!/bin/bash

eth=$1

io=$2

net_file="/proc/net/dev"

if [ $2 == "in" ]

then

n_new=`grep "$eth" $net_file|awk '{print $2}'`

n_old=`tail -1 /tmp/neti.log`

n=`echo "$n_new-$n_old"|bc`

d_new=`date +%s`

d_old=`tail -2 /tmp/neti.log|head -1`

d=`echo "$d_new-$d_old"|bc`

if_net=`echo "$n/$d"|bc`

echo $if_net

date +%s>>/tmp/neti.log

grep "$eth" $net_file|awk '{print $2}'>>/tmp/neti.log

elif [ $2 == "out" ]

then

n_new=`grep "$eth" $net_file|awk '{print $10}'`

n_old=`tail -1 /tmp/neto.log`

n=`echo "$n_new-$n_old"|bc`

d_new=`date +%s`

d_old=`tail -2 /tmp/neto.log|head -1`

d=`echo "$d_new-$d_old"|bc`

if_net=`echo "$n/$d"|bc`

echo $if_net

date +%s>>/tmp/neto.log

grep "$eth" $net_file|awk '{print $10}'>>/tmp/neto.log

else

echo 0

fi

说明:脚本的思路就是通过查看文件 /proc/net/dev 里面的数值,来计算实时网卡流量,其实我算的是一个平均值。分为进和出。如果这个脚本每隔1分钟执行一次,那么算出来的流量值就是1分钟的平均值。

3、修改权限

[root@client ~]# chmod a+x /usr/local/sbin/zabbix/net.sh

4、执行脚本前的操作

[root@client ~]# touch /tmp/net[io].log

[root@client ~]# date +%s >>/tmp/neti.log

[root@client ~]# grep eth0 /proc/net/dev |awk '{print $2}' >>/tmp/neti.log

[root@client ~]# date +%s >>/tmp/neto.log

[root@client ~]# grep eth0 /proc/net/dev |awk '{print $10}' >>/tmp/neto.log

[root@client ~]# chown zabbix  /tmp/net[io].log

[root@client ~]# /etc/init.d/zabbix-agent restart

5、执行脚本

[root@client ~]# /usr/local/sbin/zabbix/net.sh eth0 in

3

注意:若报“bc: command not found”,需安装bc:yum install -y bc

[root@client ~]# /usr/local/sbin/zabbix/net.sh eth0 out

2

6、检查脚本是否可用(在服务端执行)

[root@server ~]# zabbix_get -s 192.168.0.114 -p10050 -k "my.net.if[eth0,in]"

3

[root@server ~]# zabbix_get -s 192.168.0.114 -p10050 -k "my.net.if[eth0,out]"

2

7、在zabbix网页上配置

首先找到对应添加的主机,这里我用上篇文章做实验时候添加的主机,名为tpp,这里只修改以下几处:

添加eth0_in:

Configuration --> Hosts --> Items --> Create item

Name:eth0_net_in

Type: Zabbix agent

Key:my.net.if[eth0,in]

Update interval (in sec):30

Save

添加eth0_out:

Configuration --> Hosts --> Items --> Create item

Name:eth0_net_out

Type: Zabbix agent

Key:my.net.if[eth0,out]

Update interval (in sec):30

Save

然后我们在Monitoring--> Latest data 找到对应的主机名,看到对应的项目

也可以点开右边的 Graph 查看图表形式。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 194,088评论 5 459
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 81,715评论 2 371
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 141,361评论 0 319
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 52,099评论 1 263
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 60,987评论 4 355
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 46,063评论 1 272
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 36,486评论 3 381
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 35,175评论 0 253
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 39,440评论 1 290
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 34,518评论 2 309
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 36,305评论 1 326
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 32,190评论 3 312
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 37,550评论 3 298
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 28,880评论 0 17
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 30,152评论 1 250
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 41,451评论 2 341
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 40,637评论 2 335

推荐阅读更多精彩内容