用最简单的方式安装smokeping

适用于宽带运营商维护和IDC机房维护

可以检测本地网络的到上级运营商出口这段路由各个节点的稳定性

可以检测本地网络到各主要门户网站的延时,丢包率,稳定性

可以检测本地网络到各地游戏服务器的延时,丢包率,稳定性

smokeping缺点:不能在前台Web页面添加要检测的节点,必须在后台smokeping的配置文件中添加

安装前的准备:

1. 操作系统:选择centOS6.5 版,里面的RPM包基本上都是最新的。

注1: centOS 5.6版本在安装rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm包是会遇到依赖性问题,要求安装rpmlib包,但centOS5.6版本中的rpmlib版本较低,无法直接安装

注2:在安装centOS6.5时,要注意设置系统的IP地址,如下图,点击【configure network】按钮,选择【system eth0】, 点击【IPv4Seting】,设置IP地址

注3: 选择安装包时,点选【Basic Server】, 要安装621个基本包

注4: 其他安装步骤,按照正常的安装流程操作即可

二. 安装过程

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与依赖库

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 --------------------- 本文来自 Erica_Yue 的CSDN 博客 ,全文地址请点击:https://blog.csdn.net/erica_yue/article/details/78455101?utm_source=copy

注:perl-CGI-SpeedyCGI,perl-CGI-SpeedCGI这两个包在安装过程中会提示找不到,但没关系

注:用yum安装大量的依赖包还是很方便的,而百度上有些关于安装smokeping的文档要求使用wget下载后再用make,make install方式安装,虽然make方式不复杂,但通过make编译再安装几十个包就显得有点繁锁了。

3.下载与安装smokeping

wgethttp://oss.oetiker.ch/smokeping/pub/smokeping-2.6.8.tar.gz

tarzxvf smokeping-2.6.8.tar.gz

cdsmokeping-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/gmakeinstall

现在smokeping安装完成

4. 配置smokeping

(1) 创建cachedatavar目录

cd /usr/local/smokeping

mkdir cache data var

(2)在创建日志

touch /var/log/smokeping.log

(3)授权

chown apache:apache cache data var

chown apache:apache /var/log/smokeping.log

(4) 修改配置文件

cd/usr/local/smokeping/htdocs/

mvsmokeping.fcgi.dist smokeping.fcgi

cd/usr/local/smokeping/etc

mvconfig.dist config

vimconfig

cgiurl  = http://some.url/smokeping.cgi

主要是修改这行,把some.url修改为你的ip或者域名

*** Database ***

step  = 300

pings  = 60

然后修改step,从300改为60,这是检测的时间,pings 从20 改为60, 即60秒ping 60次

(5).配置完成之后修改密码文件权限

chmod 600 /usr/local/smokeping/etc/smokeping_secrets.dist

5. 修改apache的配置

vim /etc/httpd/conf/httpd.conf

在DocumentRoot"/var/www/html" 这一行之下添加如下内容:

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">

AllowOverrideNone

OptionsAll

AddHandlercgi-script .fcgi .cgi

Orderallow,deny

Allowfrom all

DirectoryIndexsmokeping.fcgi

</Directory>

6. 设置开机启动httpd,smokeping,并关闭iptables.

echo "/usr/local/smokeping/bin/smokeping--logfile=/var/log/smokeping.log 2>&1 &" >>/etc/rc.local

chkconfig httpd on     #开机启动httpd进程

chkconfig iptables off #开机不启动iptables服务

7. 启动http与smokeping

/etc/init.d/httpd start

/usr/local/smokeping/bin/smokeping--logfile=/var/log/smokeping.log 2>&1 &

在修改了配置文件之后,可以不重启,重载一下配置文件

/usr/local/smokeping/bin/smokeping --reload

8. 打开检测主机的Web页面

在Web浏览器里输入http://您的监控主机IP/smokeping

如果遇到500错误:

Internal Server Error

The server encountered an internal error or misconfigurationand was unable to complete your request.

Please contact the server administrator, root@localhost andinform them of the time the error occurred, and anything you might have donethat may have caused the error.

More information about this error may be available in theserver error log.

--------------------------------------------------------------------------------

Apache/2.2.15 (CentOS) Server at 192.168.2.101 Port 80

说明没有关闭SElinux选项,关闭就正常了

vi /etc/sysconfig/selinux

SELINUX=permissive

[root@localhost ~]# getenforce     #查看SElinux 的命令

Permissive                      #返回的结果是Permissive,表示已经关闭SElinux了

9. 在Web页面增加验证用户名和密码(可选步骤)

(1)修改httpd.conf里的内容

<Directory "/usr/local/smokeping">

AllowOverrideNone

OptionsAll

AddHandlercgi-script .fcgi .cgi

AllowOverrideAuthConfig

Orderallow,deny

Allowfrom all

AuthName "Smokeping"

AuthTypeBasic

AuthUserFile/usr/local/smokeping/htdocs/htpasswd

Requirevalid-user

DirectoryIndexsmokeping.fcgi

</Directory>

注:上面的内容部分已经添加,这里仅添加红色字体内容即可。

(2)设置登录账户与密码

进入cd /usr/local/smokeping/htdocs目录,执行命令:htpasswd -c /usr/local/smokeping/htdocs/htpasswd admin

这个是设置登录账户为admin,密码在后面输入,然后重启httpd就可以实现密码验证登录

重新登录web页面,会要求输入用户名和密码,如下图

11. 一定要同步好时间

在ESXI4的虚拟机中,定期执行ntpdate 210.72.145.44    #或者与本地的时间服务器同步

在vmwareworkstation中,安装vmware-tools,虚拟机的时间会自动与其宿主机时间同步

注:如果vmwareworkstation中的虚拟机不安装vmware-tools,则虚拟机时间会与宿主机时间相隔整整8个小时(虚拟机时间早于宿主机时间)

vmware-tools的安装不在此叙述

12. 特别说明: 修改/usr/local/smokeping/etc/config文件的配置参数,必须重启动smokeping程序

(1)如果重启动smokeping程序失败,根据报错提示删除/usr/local/smokeping/data子文件夹的rrd文件

(2)中文问题:如果需要在网页里展示中文,修改/usr/local/smokeping/etc的config文件

*** Presentation***

charset = utf-8 //注:在这里添加

然后在menu与titile里修改中文,重启即可

有一个要注意的地方就是,你输入的中文必须在utf-8的字符编码下输入的中文字符,不然会出现乱码。

如果在xshel下,选择file-properities-terminal

如果还是不显示就看看你系统里是否安装了中文字体,或者在安装一个

[root@smokepingdata]# ps -ef |grep smoke   #查找smokeping进程

root      8740    1  0 09:08 ?        00:00:00 /usr/local/smokeping/bin/smokeping[FPing]

root     35552 35529  0 09:33 pts/2    00:00:00 grep smoke

[root@smokepingdata]# kill 8740     #杀掉smokeping进程

[root@smokepingdata]# ps -ef |grep smoke

root     35554 35529  4 09:33 pts/2    00:00:00 grep smoke

smokeping进程已经被杀掉

[root@smokepingdata]#screen                               #如果通过SSH远程登录到监控主机,最后执行screen,在虚拟窗口中启动smokeping

/usr/local/smokeping/bin/smokeping--logfile=/var/log/smokeping.log 2>&1 &

三. 添加需要监控的网站和节点(在/usr/local/smokeping/etc/config中添加)

* smokeping就这点不好,添加节点不能在前台Web页面添加,一定要在后台的配置文件中添加,希望以后的版本中能改进一下  *

* 修改/usr/local/smokeping/etc/config 后,必须重启smokeping 程序,配置才会生效  *

* smokeping 会根据配置文件config 在/usr/local/smokeping/data之下添加moniter文件夹,其下包含website子文件夹 *

* 用vmwareworkstation的虚拟机测试有一点好处,workstation下的虚拟网卡可以设置出入的丢包率,适合smokeping做丢包测试, 经过测试smokeping检测出的丢包率与vmware worksation虚拟网卡设置的丢包率基本相同,也就是说smokeping 能够反应网络的真实状况 *

添加监控节点示例:注意+是第一层,++是第二层,+++是第三层

+ moniter

menu = moniter

++ website

menu = website

title = moniter website

#host = /moniter/website/baidu/moniter/website/sina /moniter/website/taobao /moniter/website/QQ

+++ baidu

menu = baidu

title = baidu.com

alerts = someloss

host = www.baidu.com

+++ sina

menu = sina

title = sina.com.cn

alerts = someloss

host = www.sina.com.cn

+++ taobao

menu = taobao

title = taobao.com

alerts = someloss

host = www.taobao.com

+++ QQ

menu = QQ

title = QQ

alerts = someloss

host = www.qq.com.cn

+++ sohu

menu = sohu

title = sohu

alerts = someloss

host = www.sohu.com

效果图:当前菜单下主机延时,丢包图效果图:当前菜单下某主机延时,丢包详细图

图例说明

绿块表示不丢包,其他颜色的块表示不同程序的丢包。

图形越平稳,表示网络越稳定,如果图形峰值和低谷很多,则表示网络时延不稳定,忽高忽低。

转载于:https://blog.51cto.com/lihongweibj/1745479

Centos6.X安装smokeping相关推荐

  1. centos6一键安装vsftpd脚本

    centos6一键安装vsftpd脚本 手动安装vsftpd参考教程:Centos下安装Vsftpd的图文教程 vsftpd脚本功能: 1.安装 (命令执行:sh xxx.sh)2.添加ftp用户 ( ...

  2. linux卸载hadoop版本,centos6.5 安装hadoop1.2.1的教程详解【亲测版】

    本篇只简单介绍安装步骤 1. 角色分配 10.11.84.4 web-crawler--1.novalocal master/slave 10.11.84.5 web-crawler--2.noval ...

  3. centos6.8 安装nginx

    centos6.8 安装nginx需要编译nginx源码,不过没啥大不了的,按照步骤来,肯定能成功. 1.安装必要的依赖: yum install -y gcc-c++yum install -y p ...

  4. centos6.8安装 gitlab 9.3.5及使用

    centos6.8安装 gitlab 9.3.5及使用 环境准备: [root@caosm03 conf]# cat /etc/issue CentOS release 6.8 (Final) Ker ...

  5. Centos6.6安装zabbix server 3.2

    2019独角兽企业重金招聘Python工程师标准>>> Centos6.6安装zabbix server 3.2 mysql,php,tengine 安装包和表分区脚本下载:http ...

  6. CentOS-6.3安装配置SVN

    安装说明 系统环境:CentOS-6.3 安装方式:yum install (源码安装容易产生版本兼容的问题) 安装软件:系统自动下载SVN软件 检查已安装版本 #检查是否安装了低版本的SVN [ro ...

  7. centos6.5安装docker

    centos6.5 安装docker 防伪码:吃的苦中苦,方为人上人! 前言:在当今的主流社会中,docker和openstatick是一大主流方向,下面为大家讲解理论知识和实际操作现实中的docke ...

  8. LInux CentOS6 无人值守安装实例(原作)

    Linux CentOS6 无人值守安装: 繁重多台服务器安装是一件既没有技术含量有大量浪费时间的过程,无人值守安装是一个可以很方便的定制多台服务器的优选解决方案,一下就来介绍下我的无人值守安装案例: ...

  9. centos 6.5安装mysql5.7,centos6.5安装mysql5.7

    dev.mysql.com/downloads/file/?id=473559 检查并删除以前的mysql  请看上篇   CentOS6.5 下MySQL傻瓜式安装 2.把压缩包放到  /usr/l ...

最新文章

  1. Vue-Cli3.0怎么使用预渲染怎么配置prerender-spa-plugin
  2. 前端性能优化 -- 从 10 多秒到 1.05 秒
  3. LeetCode 539. 最小时间差(哈希)
  4. 重命名Heroku的app
  5. mysql之查询排序
  6. 三极晶体管放大电路实验
  7. python request 库传送formdata_Python Requests库 form-data 上传文件操作
  8. 如何获取下拉列表框的值
  9. windows如何设定定时关机和取消定时
  10. c语言基础--ASCII码表
  11. Phison(群联) PS2251-70等系列量产工具,U盘量产修复,另外一芯片的量产工具
  12. SCI收录期刊——采矿和选矿
  13. 企业文化与“酱油党”
  14. gg 修改器游戏被保护_王者荣耀安卓和IOS修改超长游戏名字方法
  15. 解决双屏切换为单屏,打开的软件窗口无法显示问题
  16. 共享文件夹无法打开——服务器存储空间不足,无法处理此命令
  17. PTA甲级模拟第九弹:1114-1117
  18. TM1621数码管驱动
  19. Josh 的学习笔记之数字通信(Part 4——带通调制和解调)
  20. ATT推出云5G网络开源工具Airship

热门文章

  1. python批量读取文件赋值给一个参数_求助一个Python 循环读取文件,并对读到的字符串进行赋值,然后进一步生成json file 的方法。...
  2. Echarts.js+jquery.js+china.js实现中国疫情地图
  3. CentOS7安装Redis,全网最快安装教程
  4. python选择排序_Python实现选择排序
  5. echo 多行_分享laravel-echo-server广播服务搭建-Laravel
  6. mysql的脚本默认存_MySQL修改默认存储引擎的实现方法
  7. js 如何将java list集合转换成var类型数组_零基础参加郑州Java培训 一定要注意Arrays.asList的用法...
  8. 深度linux专业版,用Deepin 15.5 SP2专业版的不要换源更新,否则会成为未授权版本...
  9. python 矩阵乘法梯度下降_使用python和numpy进行梯度下降
  10. 16F877A和24C02通信汇编语言,PIC16f877A读写24c02程序