我是靠谱客的博主 超级毛豆,这篇文章主要介绍利用zabbix监控网宿cdn的流量,现在分享给大家,希望可以做个参考。

【背景】CDN一般是按流量收费的,为了能及时发现流量问题,尽快处理减少不必要的损失,需要对流量进行实时的监控,设定阈值添加报警。

【方法】网宿CDN带宽查询接口是一套提供给客户的用于辅助网宿客户服务平台的API接口。借由此接口,客户可实现实时频道带宽查询,并可进行二次开发。

    编写自定义脚本放到zabbix-agent的/etc/zabbix/scripts目录下:

 

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
chmod + x  cdn_bwcx.sh #添加可执行权限 cat cdn_bwcx.sh #!/bin/bash #encoding=utf-8 endtime_ori=`awk 'BEGIN{print strftime("%Y-%m-%d %H:%M",systime())}'` starttime_ori=`awk 'BEGIN{print strftime("%Y-%m-%d %H:%M",(systime()-540))}'` function encodeurl() {     encoded_str=`echo "$*" | awk 'BEGIN {         split ("1 2 3 4 5 6 7 8 9 A B C D E F", hextab, " ")         hextab [0] = 0         for (i=1; i<=255; ++i) {             ord [ sprintf ("%c", i) "" ] = i + 0         }     }     {         encoded = ""         for (i=1; i<=length($0); ++i) {             c = substr ($0, i, 1)             if ( c ~ /[a-zA-Z0-9.-]/ ) {                 encoded = encoded c             # safe character             } else if ( c == " " ) {                 encoded = encoded "+"   # special handling             } else {                 # unsafe character, encode it as a two-digit hex-number                 lo = ord [c] % 16                 hi = int (ord [c] / 16);                 encoded = encoded "%" hextab [hi] hextab [lo]             }         }         print encoded     }' 2>/dev/null` } encodeurl $starttime_ori starttime=$encoded_str encodeurl $endtime_ori endtime=$encoded_str curl "https://myview.chinanetcenter.com/api/bandwidth-channel.action?u=xxxxx&p=xxxxxxxxxxxxxxxx&startdate=$starttime&enddate=$endtime&isExactMatch=false&resultType=1" >/etc/zabbix/scripts/qsmy.txt   #u和p修改为CDN提供的你公司的API用户名密码 [root@zabbix_server scripts]# chown zabbix.zabbix qsmy.txt #修改储存数据的txt的属主属组为zabbix 编辑zabbix客户端的配置添加自定义参数 [root@zabbix_server scripts]# vim /etc/zabbix/zabbix_agentd.conf UserParameter=cdn.bandwidth,grep -w 'bandwidth time' /etc/zabbix/scripts/qsmy.txt |awk -F '[><]' '{print $3}'|head -1    #添加到配置文件的最后 [root@zabbix_server scripts]# /etc/init.d/zabbix_agentd restart #重启zabbix客户端 添加定时任务,定时获取cdn的流量值 [root@zabbix_server scripts]# crontab -e */1 * * * * /bin/sh /etc/zabbix/scripts/cdn_bwcx.sh

至此,客户端数据的获取完成了。


然后在zabbix服务端添加Item,如下图:

wkiol1zxz8hamnrtaahxmqrqgkk908.jpg

添加grap,如下图:

wkiol1zx0cosd8ewaaj-twt1jwi916.jpg设置完成,效果如下:

wkiom1zx0gohep3laajnrq0dy4m275.jpg

大家可根据自己的需求设定action,超过阈值立即报警!

转载于:https://blog.51cto.com/xiancai/1717384

最后

以上就是超级毛豆最近收集整理的关于利用zabbix监控网宿cdn的流量的全部内容,更多相关利用zabbix监控网宿cdn内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(46)

评论列表共有 0 条评论

立即
投稿
返回
顶部