网络性能监测工具smokeping
smokeping简介:
smokeping是rrdtool的作者Tobi Oetiker的作品,所以它在图形显示方面有很大优势,也是一个很有特点的opensource工具:多种探测方式,包括fping、echoping、dig、curl等;可以在多个节点收集同一个监测点的数据;很有特色的alert设置,不只是简单的设置一个阀值;
Smokeping 是一款用于网络性能监测的监控软件,通过它可以在自己公司IDC的网络状况,如延时,丢包率,是否BGP多线等,通过rrdtool制图方式,图形化地展示网络的时延情况,进而能够清楚的判断出网络的即时通信情况,可以监视www服务器性能,监视dns查询性能,监视ssh性能等
smokeping的优点:
- 最佳的画图功能,延迟和丢包用颜色和阴影表示很直观。
- 免费和开源,作者是MRTG和RRDtool作者。
- 支持主从的分布式模式。
- 可以自定义报警功能。
安装配置smokeping
[root@smokeping ~]# cat /etc/redhat-release
CentOS release 6.5 (Final)
[root@smokeping ~]# uname -a
Linux smokeping 2.6.32-431.el6.x86_64 #1 SMP Fri Nov 22 03:15:09 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux
安装依赖包
yum install -y perl perl-Net-Telnet perl-Net-DNS perl-LDAP perl-libwww-perl perl-IO-Socket-SSL perl-Socket6 perl-Time-HiRes perl-ExtUtils-MakeMaker rrdtool rrdtool-perl curl 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 popt popt-devel libidn libidn-devel
上传下面三个软件
[root@smokeping ~]# ls
echoping-6.0.2.tar.gz fping-3.10.tar.gz smokeping-2.6.10.tar.gz
编译、安装fping和echoping
[root@smokeping ~]# tar xf fping-3.10.tar.gz -C /usr/src/
[root@smokeping ~]# cd /usr/src/fping-3.10/
[root@smokeping fping-3.10]# ./configure
[root@smokeping fping-3.10]# make
[root@smokeping fping-3.10]# make install
[root@smokeping fping-3.10]# tar xf /root/echoping-6.0.2.tar.gz -C /usr/src/
[root@smokeping fping-3.10]# cd ../echoping-6.0.2/
[root@smokeping echoping-6.0.2]# yum -y install popt popt-devel
[root@smokeping echoping-6.0.2]# yum -y install libidn libidn-devel
[root@smokeping echoping-6.0.2]# ./configure && make && make install 如报错:
configure: error: Missing popt library, get it from ftp://ftp.rpm.org/pub/rpm/dist/rpm-x.y.z
解决办法:
yum install -y popt-devel 继续报错:
configure: error: Get the GNU libidn library (http://www.josefsson.org/libidn/) in order to use Unicode - multi-script - domain names or use --without-libidn to disable it
解决办法:
./configure --prefix=/usr/local/echoping --with-ssl --without-libidn 报错:
configure: error: Get the OpenSSL library (http://www.openssl.org/)
解决办法:
yum install -y openssl openssl-devel
安装smokeping
[root@smokeping echoping-6.0.2]# tar xf /root/smokeping-2.6.9.tar.gz -C /usr/src/
[root@smokeping echoping-6.0.2]# cd ../smokeping-2.6.9/
[root@smokeping smokeping-2.6.9]# mkdir -p /usr/local/smokeping/thirdparty
[root@smokeping smokeping-2.6.9]# ./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty
[root@smokeping smokeping-2.6.9]# ./configure --prefix=/usr/local/smokeping/
[root@smokeping smokeping-2.6.9]# /usr/bin/gmake install
配置smokeping
[root@smokeping smokeping-2.6.9]# cd /usr/local/smokeping/
[root@smokeping smokeping]# mkdir cache data var
[root@smokeping smokeping]# touch /var/log/smokeping.log
[root@smokeping smokeping]# chown apache:apache cache data var
[root@smokeping smokeping]# chown apache:apache /var/log/smokeping.log
[root@smokeping smokeping]# chmod 600 /usr/local/smokeping/etc/smokeping_secrets.dist
[root@smokeping smokeping]# cd /usr/local/smokeping/htdocs/
[root@smokeping htdocs]# mv smokeping.fcgi.dist smokeping.fcgi
[root@smokeping htdocs]# cd /usr/local/smokeping/etc/
[root@smokeping etc]# mv config.dist config
[root@smokeping etc]# vim /usr/local/smokeping/etc/config
修改如下:
14 cgiurl = http://192.168.8.30/smokeping.cgi 33 *** Database ***
34
35 step = 60 #建议为60 一分钟采集一次数据
36 pings = 20 #建议为20 每20秒测试一次
109 binary = /usr/local/sbin/fping
编辑Apache配置文件
[root@smokeping etc]# vim /etc/httpd/conf/httpd.conf
ServerName 192.168.8.30 在文件最后加入
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>
调整字体库
图像界面的中文支持
[root@smokeping etc]# yum -y install wqy-zenhei-fonts.noarch
[root@smokeping etc]# vim /usr/local/smokeping/etc/config
50 charset = utf-8 #添加此行 [root@smokeping etc]# vim /usr/local/smokeping/lib/Smokeping/Graphs.pm
148 '--font TITLE:20:"WenQuanYi Zen Hei Mono"', 添加此行

配置测试数据,进行监测
[root@smokeping etc]# vim /usr/local/smokeping/etc/config 在配置文件最后添加: + Other
menu = 三大网络监控
title = 监控统计
++ dianxin
menu = 电信网络监控
title = 电信网络监控列表
host = /Other/dianxin/dianxin-bj /Other/dianxin/dianxin-hlj /Other/dianxin/dianxin-tj /Other/dianxin/dianxin-sc /Other/dianxin/dianxin-sh /Other/dianxin/dianxin-gz
+++ dianxin-bj
menu = 北京电信
title = 北京电信
alerts = someloss
host = 202.96.199.133 +++ dianxin-hlj
menu = 黑龙江电信
title = 黑龙江电信
alerts = someloss
host = 219.147.198.242 +++ dianxin-tj
menu = 天津电信
title = 天津电信
alerts = someloss
host = 219.150.32.132 +++ dianxin-sc
menu = 四川电信
title = 四川电信
alerts = someloss
host = 61.139.2.69 +++ dianxin-sh
menu = 上海电信
title = 上海电信
alerts = someloss
host = 116.228.111.118 +++ dianxin-gz
menu = 广东电信
title = 广东电信
alerts = someloss
host = 113.111.211.22 ++ liantong
menu = 联通网络监控
title = 联通网络监控列表
host = /Other/liantong/liantong-bj /Other/liantong/liantong-hlj /Other/liantong/liantong-tj /Other/liantong/liantong-sc /Other/liantong/liantong-sh /Other/liantong/liantong-gz +++ liantong-bj
menu = 北京联通
title = 北京联通
alerts = someloss
host = 61.135.169.121 +++ liantong-hlj
menu = 黑龙江联通
title = 黑龙江联通
alerts = someloss
host = 202.97.224.69 +++ liantong-tj
menu = 天津联通
title = 天津联通
alerts = someloss
host = 202.99.96.68 +++ liantong-sc
menu = 四川联通
title = 四川联通
alerts = someloss
host = 119.6.6.6 +++ liantong-sh
menu = 上海联通
title = 上海联通
alerts = someloss
host = 210.22.84.3 +++ liantong-gz
menu = 广东联通
title = 广东联通
alerts = someloss
host = 221.5.88.88 ++ yidong
menu = 移动网络监控
title = 移动网络监控列表
host = /Other/yidong/yidong-bj /Other/yidong/yidong-hlj /Other/yidong/yidong-tj /Other/yidong/yidong-sc /Other/yidong/yidong-sh /Other/yidong/yidong-gz +++ yidong-bj
menu = 北京移动
title = 北京移动
alerts = someloss
host = 221.130.33.52 +++ yidong-hlj
menu = 黑龙江移动
title = 黑龙江移动
alerts = someloss
host = 211.137.241.35 +++ yidong-tj
menu = 天津移动
title = 天津移动
alerts = someloss
host = 211.137.160.5 +++ yidong-sc
menu = 四川移动
title = 四川移动
alerts = someloss
host = 218.201.4.3 +++ yidong-sh
menu = 上海移动
title = 上海移动
alerts = someloss
host = 117.131.19.23 +++ yidong-gz
menu = 广东移动
title = 广东移动
alerts = someloss
host = 211.136.192.6
启动服务
[root@smokeping etc]# echo 'export PATH=/usr/local/smokeping/bin/:$PATH' >> /etc/profile
[root@smokeping etc]# /etc/init.d/httpd start
正在启动 httpd: [确定] [root@smokeping etc]# /usr/local/smokeping/bin/smokeping
WARNING: Hostname 'james.address' does currently not resolve to an IPv6 or IPv4 address
Note: logging to syslog as local0/info.
Daemonizing /usr/local/smokeping/bin/smokeping ... #warning可忽略
浏览器访问 http://IP地址/smokeping
效果展示:





最后附上smokeping的图标参数说明:
网络性能监测工具smokeping的更多相关文章
- Linux 性能监测工具总结
前言: Linux系统出现问题时,我们不仅需要查看系统日志信息,而且还要使用大量的性能监测工具来判断究竟是哪一部分(内存.CPU.硬盘……)出了问题.在Linux系统中,所有的运行参数保存在虚拟目录/ ...
- [转]网络性能评估工具Iperf详解(可测丢包率)
原文链接:安全运维之:网络性能评估工具Iperf详解:http://os.51cto.com/art/201410/454889.htm 参考博文:http://linoxide.com/monito ...
- pyDash:一个基于 web 的 Linux 性能监测工具
pyDash 是一个轻量且基于 web 的 Linux 性能监测工具,它是用 Python 和 Django 加上 Chart.js 来写的.经测试,在下面这些主流 Linux 发行版上可运行:Cen ...
- Linux网络性能评估工具iperf 、CHARIOT测试网络吞吐量
网络性能评估主要是监测网络带宽的使用率,将网络带宽利用最大化是保证网络性能的基础,但是由于网络设计不合理.网络存在安全漏洞等原因,都会导致网络带宽利用率不高.要找到网络带宽利用率不高的原因,就需要对网 ...
- JDK内置性能监测工具使用
Java自带的性能监测工具用法简介——jstack.jconsole.jinfo.jmap.jdb.jsta.jvisualvmJDK内置工具使用 一.javah命令(C Header and Stu ...
- 强大的性能监测工具dstat
强大的性能监测工具dstat 本节分为以下几个部分: dstat介绍: dstat命令是一个用来替换vmstat.iostat.netstat.nfsstat和ifstat这些命令的工具,是一个全能系 ...
- Linux按照CPU、内存、磁盘IO、网络性能监测
系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长期和持续的过程,不 是说现在优化了,测试了,以后就可以一劳永逸了,也不是说书 ...
- inux按照CPU、内存、磁盘IO、网络性能监测
http://my.oschina.net/chape/blog/159640 系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监测,而且是一个长 ...
- Linux按照CPU、内存、磁盘IO、网络性能监测【转载】
本文转载地址:https://my.oschina.net/chape/blog/159640 系统优化是一项复杂.繁琐.长期的工作,优化前需要监测.采集.测试.评估,优化后也需要测试.采集.评估.监 ...
随机推荐
- Entity Framework基础
http://blog.csdn.net/hurtlingsnail/article/details/53113934
- Python爬虫(四)
爬取雪球网上的房产信息 源码: import requests import json import pymysql # 建立数据库连接 db = pymysql.connect(host=', po ...
- DataContract 和 DataMember
数据契约(DataContract) 服务契约定义了远程访问对象和可供调用的方法,数据契约则是服务端和客户端之间要传送的自定义数据类型. 一旦声明一个类型为DataContract,那么该类型就可以被 ...
- 【BZOJ4676】Xor-Mul棋盘 拆位+状压DP
[BZOJ4676]Xor-Mul棋盘 Description 一个n*m的棋盘,左上角为(1,1),右下角为(n,m).相邻的2点之间有连边(如下图中实线)特殊地,(1,i)与(n,i)也连有一条边 ...
- Oracle的聚合函数group by结合CUBE和ROLLUP的使用
转自:https://docs.oracle.com/cd/E11882_01/server.112/e25554/aggreg.htm#DWHSG8618 CUBE Syntax CUBE appe ...
- 170210、JAVA中List、Map、Set的区别与选用
先了解下类层次关系: Collection ├List│├LinkedList│├ArrayList│└Vector│ └Stack└SetMap├Hashtable├HashMap └WeakHas ...
- 【VUE】VUE相关学习和知识备份
一.学习资料参考 1.1.Vue.js 官网:Vue.js https://cn.vuejs.org/ 官方文档:介绍 - Vue.js https://cn.vuejs.org/v2/guide/ ...
- 巨蟒python全栈开发-第17天 核能来袭-成员
一.今日主要内容 1.成员 在类中你能写的所有内容都是类的成员 2.变量 (1)实例变量:昨天写的就是实例变量,由对象去访问的变量. (2)类变量(静态变量):此时,这个变量属于类,但是对象也可以访问 ...
- IOS And WCF 上传文件
IOS And WCF Story 研究IOS上传到WCF图片的小功能,WCF实现服务端的文件上传的例子很多,单独实现IOS发送图片的例子也很多,但是两个结合起来的就很少了. 可以通过base64来上 ...
- Qunit 和 jsCoverage使用方法(js单元测试)
Qunit 和 jsCoverage使用方法(js单元测试) 近日在网上浏览过很多有关js单元测试相关的文档,工具,但是,针对Qunit 和 jsCoverage使用方法,缺少详细说明,对于初入前端的 ...