001使用smokeping监控idc机房网络质量情况
最近工作比较忙,也没有时间写博客,看到好友芮峰云最近一直在写博客,所以也手痒了,就先把之前的一些积累下来的文章分享给大家。
本文是介绍如何的使用smokeping来监控idc机房的网络质量情况,从监控图上的延时与丢包能分辨出你机房的网络是否稳定,是否为多线,是否为BGP机房,到各城市的3个运行商网络各是什么情况,如果出现问题,如果有针对的解决。而且如果选择新机房的时候,你可以根据smokeping的监控结果来判断这个机房是否适合。
1、安装其他源
1
|
rpm -Uvh http: //apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm |
2、安装rrdtool与依赖库
1
|
yum -y install perl perl-Net-Telnet perl-Net-DNS perl-LDAP perl-libwww-perl perl-RadiusPerl perl-IO-Socket-SSL perl-Socket6 perl-CGI-SpeedyCGI perl-FCGI perl-CGI-SpeedCGI perl-Time-HiRes perl-ExtUtils-MakeMaker perl-RRD-Simple rrdtool rrdtool-perl curl fping echoping httpd httpd-devel gcc make wget libxml2-devel libpng-devel glib pango pango-devel freetype freetype-devel fontconfig cairo cairo-devel libart_lgpl libart_lgpl-devel mod_fastcgi |
3、下载与安装smokeping
1
2
3
4
5
6
7
8
|
wget http: //oss.oetiker.ch/smokeping/pub/smokeping-2.6.8.tar.gz tar zxvf smokeping- 2.6 . 8 .tar.gz cd smokeping- 2.6 . 8 ./configure --prefix=/usr/local/smokeping 出现问题是因为需要安装perl的模块,所以运行下面内容即可 ./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty ./configure --prefix=/usr/local/smokeping /usr/bin/gmake install |
现在smokeping安装完成
4、配置smokeping
a.创建cache、data、var目录
1
2
|
cd /usr/local/smokeping mkdir cache data var |
b.在创建日志
1
|
touch / var /log/smokeping.log |
c.授权
1
2
|
chown apache:apache cache data var chown apache:apache / var /log/smokeping.log |
d.修改配置文件
1
2
3
4
5
6
|
cd /usr/local/smokeping/htdocs/ mv smokeping.fcgi.dist smokeping.fcgi cd /usr/local/smokeping/etc mv config.dist config vim config cgiurl = http: //some.url/smokeping.cgi |
主要是修改这行,把some.url修改为你的ip或者域名
1
2
|
*** Database *** step = 300 |
然后修改step,从300改为60,这是检测的时间。
e.配置完成之后修改密码文件权限
1
|
chmod 600 /usr/local/smokeping/etc/smokeping_secrets.dist |
f.修改apache的配置
1
|
vim /etc/httpd/conf/httpd.conf |
添加如下
1
2
3
4
5
6
7
8
9
10
11
|
Alias /cache "/usr/local/smokeping/cache/" Alias /cropper "/usr/local/smokeping/htdocs/cropper/" Alias /smokeping "/usr/local/smokeping/htdocs/smokeping.fcgi" <Directory "/usr/local/smokeping" > AllowOverride None Options All AddHandler cgi-script .fcgi .cgi Order allow,deny Allow from all DirectoryIndex smokeping.fcgi </Directory> |
f.设置开机启动
1
|
echo "/usr/local/smokeping/bin/smokeping --logfile=/var/log/smokeping.log 2>&1 &" >> /etc/rc.local |
g.启动http与smokeping
1
2
|
/etc/init.d/httpd start /usr/local/smokeping/bin/smokeping --logfile=/ var /log/smokeping.log 2 >& 1 & |
然后访问你在config里设置的cgiurl= http://some.url/smokeping
注意如果出现500错误就是因为你没有关闭selinux的问题,关闭了就能正常打开。
剩下就该你自己修改你要监控的内容了
注意+是第一层,++是第二层
1
2
3
4
5
6
7
8
9
10
|
+ Test menu= monitor #parents = owner:/Test/James location:/ title=monitor all ++ localhost menu = localhost title =localhost alerts = someloss slaves = boomer slave2 host = 192.168 . 56.102 |
然后smokeping的web界面如下图
如果各位就这样放到网上的话,是十分的不安全,所以需要加入访问控制。
h.修改httpd.conf里的内容
1
2
3
4
5
6
7
8
9
10
11
12
13
|
<Directory "/usr/local/smokeping" > AllowOverride None Options All AddHandler cgi-script .fcgi .cgi AllowOverride AuthConfig Order allow,deny Allow from all AuthName "Smokeping" AuthType Basic AuthUserFile /usr/local/smokeping/htdocs/htpasswd Require valid-user DirectoryIndex smokeping.fcgi </Directory> |
把之前修改的httpd.conf里的这一段直接覆盖就行
然后进入cd /usr/local/smokeping/htdocs目录
设置登录账户与密码
1
|
htpasswd -c /usr/local/smokeping/htdocs/htpasswd admin |
这个是设置登录账户为admin,密码在后面输入
然后重启httpd就可以实现密码验证登录
需要注意,一定要同步好时间,可以使用cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime或者ntpdate 210.72.145.44。
如果需要在网页里展示中文,修改/usr/local/smokeping/etc的config文件
1
2
|
*** Presentation *** charset = utf- 8 //注:在这里添加 |
然后在menu与titile里修改中文,重启即可
有一个要注意的地方就是,你输入的中文必须在utf-8的字符编码下输入的中文字符,不然会出现乱码。
如果在xshel下,选择file-properities-terminal
如果还是不显示就看看你系统里是否安装了中文字体,或者在安装一个
debian上可以先apt-cache search wqy(文泉译), centos可以yum search wqy试试。
然后yum install后在重启smokeping
如果想监控本机到电信、联通、移动、教育网的网络情况监控,可以使用下面内容
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
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
|
+ Other menu = 其他网络监控 title = 其他所有网络监控列表 ++ dianxin menu = 电信网络监控 title = 电信网络监控列表 host = /Other/dianxin/dianxin-hlj /Other/dianxin/dianxin-gd /Other/dianxin/dianxin-gs /Other/dianxin/dianxin-sh +++ dianxin-hlj menu = 黑龙江电信 title = 黑龙江电信 alerts = someloss #slaves = boomer slave2 host = 219.150 . 32.132 +++ dianxin-gd menu = 广东电信 title = 广东电信 alerts = someloss #slaves = boomer slave2 host = 113.111 . 211.22 +++ dianxin-gs menu = 甘肃电信 title = 甘肃电信 alerts = someloss #slaves = boomer slave2 host = 202.100 . 64.68 +++ dianxin-sh menu = 上海电信 title = 上海电信 alerts = someloss #slaves = boomer slave2 host = 202.96 . 209.5 #+++ dianxin-multi #menu = 多个电信网络监控列表 #title = 多个电信网络监控列表 #alerts = someloss #slaves = boomer slave2 #host = /Other/dianxin/dianxin-hlj /Other/dianxin/dianxin-gd /Other/dianxin/dianxin-gs /Other/dianxin/dianxin-sh # ++ liantong menu = 联通网络监控 title = 联通网络监控列表 host = /Other/liantong/liantong-hlj /Other/liantong/liantong-gd /Other/liantong/liantong-gs /Other/liantong/liantong-sh +++ liantong-hlj menu = 黑龙江联通 title = 黑龙江联通 alerts = someloss #slaves = boomer slave2 host = 202.97 . 224.68 +++ liantong-gd menu = 广东联通 title = 广东联通 alerts = someloss #slaves = boomer slave2 host = 221.4 . 66.66 +++ liantong-gs menu = 甘肃联通 title = 甘肃联通 alerts = someloss #slaves = boomer slave2 host = 221.7 . 34.10 +++ liantong-sh menu = 上海联通 title = 上海联通 alerts = someloss #slaves = boomer slave2 host = 210.22 . 70.3 #+++ liantong-multi #menu = 多个联通网络监控列表 #title = 多个联通网络监控列表 #alerts = someloss #slaves = boomer slave2 #host = /Other/liantong/liantong-hlj /Other/liantong/liantong-gd /Other/liantong/liantong-gs /Other/liantong/liantong-sh ++ yidong menu = 移动网络监控 title = 移动网络监控列表 host = /Other/yidong/yidong-hlj /Other/yidong/yidong-gd /Other/yidong/yidong-gs /Other/yidong/yidong-sh +++ yidong-hlj menu = 黑龙江移动 title = 黑龙江移动 alerts = someloss #slaves = boomer slave2 host = 211.137 . 241.34 +++ yidong-gd menu = 广东移动 title = 广东移动 alerts = someloss #slaves = boomer slave2 host = 211.137 . 241.34 +++ yidong-gs menu = 甘肃移动 title = 甘肃移动 alerts = someloss #slaves = boomer slave2 host = 218.203 . 160.194 +++ yidong-sh menu = 上海移动 title = 上海移动 alerts = someloss #slaves = boomer slave2 host = 117.131 . 0.22 #+++ yidong-multi #menu = 多个移动网络监控列表 #title = 多个移动网络监控列表 #alerts = someloss #slaves = boomer slave2 #host = /Other/yidong/yidong-hlj /Other/yidong/yidong-gd /Other/yidong/yidong-gs /Other/yidong/yidong-sh ++ jiaoyu menu = 教育网络监控 title = 教育网络监控列表 host = /Other/jiaoyu/jiaoyu-qh /Other/jiaoyu/jiaoyu-sh /Other/jiaoyu/jiaoyu-wh /Other/jiaoyu/jiaoyu-hn +++ jiaoyu-qh menu = 清华大学 title = 清华大学 alerts = someloss #slaves = boomer slave2 host = 166.111 . 8.28 +++ jiaoyu-sh menu = 上海交大 title = 上海交大 alerts = someloss #slaves = boomer slave2 host = 202.112 . 26.34 +++ jiaoyu-wh menu = 武汉科技大学 title = 武汉科技大学 alerts = someloss #slaves = boomer slave2 host = 202.114 . 240.6 +++ jiaoyu-hn menu = 华南农业大学 title = 华南农业大学 alerts = someloss #slaves = boomer slave2 host = 202.116 . 160.33 #+++ jiaoyu-multi #menu = 多个教育网络监控列表 #title = 多个教育网络监控列表 #alerts = someloss #slaves = boomer slave2 #host = /Other/jiaoyu/jiaoyu-qh /Other/jiaoyu/jiaoyu-sh /Other/jiaoyu/jiaoyu-wh /Other/jiaoyu/jiaoyu-hn |
展示效果为
5、关于smokeping的master与slave配置
slave主机会自己去检查监测点的情况(loss and rtt),并将数值提交给master主机(通过smokeping.cgi)。
值得注意的是,slave并不需要config文件,每次slave提交完数据以后,会询问master它自己的配置文件是否有修改,如果有修改的话slave会进行更新。
配置
在master的config里修改
1
2
3
4
|
*** Slaves *** secrets=/usr/local/smokeping/etc/smokeping_secrets.dist #密码文件 +slave1#名称 display_name=slave1 |
要注意的是"slave1"这个名字需要设置为slave主机的hostname,并且写在"slavesecrets.con"文件里面,如果不想用slave主机的hostname,那么在slave主机启动smokeping服务的时候需要使用"--slave-name"来指定自己的名字。在section
*** Targets ***
中指定那个host需要使用哪个slave帮忙进行检测。下层会继承上层的配置,如果下层不像继承的话,可以配置"slaves ="来避免使用slave。
具体安装与配置不介绍。
master/slave模式中,master和slave的图片都会显示在同一个页面中,如果不希望显示master的图片,可以使用
nomasterpoll=yes
参数。
另外要注意的一点是,master上面启动"smokeping"进程和apache进程的用户必须要一致。因为rrd文件是由"smokeping"进程创建的,而数据的update却是由"smokeping.cgi"进行的,也就是apache用户。如果不一致的话会出现rrd文件无法被更新的情况,这个情况即使在slave主机上面进行debug也是看不出来的。具体的现象是在页面上面看到master的图像出现数据,但是slave的图像一直是空白的,数据显示是"nan"。
如果大家还想细化的监控,比如按照3大运行商(电信、联通、移动)到1、2、3线城市的网络延时与丢包情况,如下图显示
1、本机房到电信运行商的1线城市网络监控情况
2、本机房到联通运行商的1线城市网络监控情况3、本机房到移动运行商的1线城市网络监控情况
4、本机房到电信运行商的2线城市网络监控情况
5、本机房到联通运行商的2线城市网络监控情况
6、本机房到移动运行商的2线城市网络监控情况
7、本机房到教育网的网络监控情况
如果达到这样的监控效果,你就能很清楚的了解你当前idc机房的网络情况,从图上的延时与丢包能分辨出你机房的网络是否稳定,是否为多线,是否为BGP机房,到各城市的3个运行商网络各是什么情况,如果出现问题,如果有针对的解决。而且如果选择新机房的时候,你可以根据smokeping的监控结果来判断这个机房是否适合。
下面是上面监控里ip的信息(如果大家想实现上面监控,可以使用下面的ip)
引自:http://dl528888.blog.51cto.com/2382721/1266598
001使用smokeping监控idc机房网络质量情况的更多相关文章
- IDC机房线路质量测试方案
1.测试节点: 北京:123.206.*.* 上海:139.196.*.* 广州:119.29.*.* 汕头:125.91.*.* 香港:103.20.*.* 美国:198.52.*.* 测试服务器: ...
- IDC机房网络测试要求
IDC机房网络质量要求: 我司项目目前覆盖目标机房是国内BGP机房.三线机房.电信机房.联通机房. 要求XXXX IDC机房到目标机房的网络质量,平均丢包≤0.5%,网络延迟≤50ms;高峰期平均丢包 ...
- Smokeping -- 监控网络质量
1.下载fping.echoping.smokeping 链接:http://pan.baidu.com/s/1pL4HLYb 密码:fxe2 2.安装依赖包 yum install -y perl ...
- linux下使用screen和ping命令对网络质量进行监控
linux下使用screen和ping命令对网络质量进行监控 场景:应用连接云服务器经常偶尔会出现连接不上的情况,android和IOS端连接的时候也会出现tcp延时5秒以上,现在想验证是否是云服务商 ...
- zabbix使用fping监控任意两个节点之间的网络质量、丢包率和响应时间
zabbix使用fping监控任意两个节点之间的网络质量.丢包率和响应时间 之前的博文 使用zabbix3..4的ICMP Ping模版实现对客户端网络状态的监控 https://www.cnblog ...
- Linux就业技术指导(三):IDC机房解密
1.1 IDC机房 1.1.1 带宽计算 带宽流量计算公式: 1 Byte=8bit,1KB=1024B,1MB=1024KB,1GB=1024MB B表示Byte,工业标准是1000. 一般我们家装 ...
- 轻松应对IDC机房带宽突然暴涨问题
轻松应对IDC机房带宽突然暴涨问题! 1[提出问题] [实际案例一] 凌晨3:00点某公司(网站业务)的一个IDC机房带宽流量突然从平时高峰期150M猛增至1000M,如下图: 该故障的影响:直接导致 ...
- IDC机房带宽突然暴涨问题!
IDC机房带宽突然暴涨问题! 1[提出问题] [实际案例一] 凌晨3:00点某公司(网站业务)的一个IDC机房带宽流量突然从平时高峰期150M猛增至1000M,如下图: 该故障的影响:直接导致数百台服 ...
- Smokeping 监控部署及配置
安装参见: https://github.com/oetiker/SmokePing/blob/master/doc/smokeping_install.pod 1 Smokeping *** Gen ...
随机推荐
- 【三】shiro入门 之 Realm
Realm:域,Shiro 从从Realm获取安全数据(如用户.角色.权限),就是说SecurityManager要验证用户身份,那么它需要从Realm获取相应的用户进行比较以确定用户身份是否合法:也 ...
- 在虚拟机上安装linux系统
1.安装linux服务器,内存4G,默认典型,next安装程序光盘影像文件,next选版本 2.6.x内核64位,next选择虚拟机位置(至少10G),next最大磁盘20G,选择单文件,next自定 ...
- oracle job定时执行存储过程
JOB定时跑插入语句1.建插入数据的存储过程create or replace procedure report_web asV_START_DATE DATE;V_END_DATE DATE;b ...
- 【JQuery】事件
一.前言 接着上一章选择器的知识,继续啊jQuery的学习 二.内容 $(function(){}) 文档初始化加载 event.pageX 相对于文档左边缘的鼠标位置 event.pa ...
- unity3D AR涂涂乐制作浅谈
unity3D AR涂涂乐制作浅谈 AR为现在是虚拟现实较为火爆的一个技术,其中有个比较炫酷的就是AR涂涂乐的玩法,这个技术可以把扫描到的图片上的纹理 粘贴到模型上实现为模型上色的功能,但是我们需要怎 ...
- 【loj6198】谢特
Portal -->loj6198 Solution (为什么感觉loj上面这几道后缀数组的题..套路都是一样的啊qwq) 同样也是..考虑某个区间\(height[i]\)的最小值的贡 ...
- Ubuntu配置vncserver
https://help.aliyun.com/knowledge_detail/59330.html 首先,安装桌面环境和vnc4server: sudo apt-get install gnome ...
- 转--snmp如何被tr069替代
Form:本期话题:技术点详解---新型网管理念TR-069 一. 带内网管与带外网管 网络设备是一种资产,资产往往都需要进行管理,网络设备也不例外,网络设备的作用是网络互联,网络应用是一种实时交互性 ...
- python自学笔记(一)
我没学过python,通过网上和一些图书资料,自学并且记下笔记. 很多细节留作以后自己做项目时再研究,这样能更高效一些. python基础自学笔记 一.基本输入和输出 pthon3.0用input提示 ...
- 【题解】期末考试 六省联考 2017 洛谷 P3745 BZOJ 4868 贪心 三分
题目传送门:这里是萌萌哒传送门(>,<) 啊♀,据说这题有个完全贪心的做法,但是要维护太多东西好麻烦的(>,<),于是就来口胡一发三分的做法. 思路很简单,假设我指定了一个x, ...