smokeping安装部署最佳实践
1.1安装smokeping
[root@linux-node2 ~]# cat /etc/redhat-release #查看服务器信息
CentOS release 6.7 (Final)
[root@linux-node2 ~]# uname -r
2.6.32-573.el6.x86_64
[root@linux-node2 ~]# 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 screen
#通过yum安装所依赖的库以及环境
[root@linux-node2 ~]# cd /usr/local/src/ #进入默认源码包存放路径
[root@linux-node2 src]# tar xf smokeping-2.6.9.tar.gz #解压smokeping
[root@linux-node2 src]# cd smokeping-2.6.9 #进入smokeping目录
[root@linux-node2 smokeping-2.6.9]# ./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty #
[root@linux-node2 smokeping-2.6.9]# ./configure --prefix=/usr/local/smokeping #编译smokeping到/usr/local
[root@linux-node2 smokeping-2.6.9]# cd /usr/local/smokeping/ #进入smokeping目录
[root@linux-node2 smokeping]# mkdir cache data var #创建三个目录
[root@linux-node2 smokeping]# touch /var/log/smokeping.log #创建smokeping日志文件
[root@linux-node2 smokeping]# chown apache.apache cache/ data/ var/ /var/log/smokeping.log #授权属主属组为apache
[root@linux-node2 smokeping]# cd /usr/local/smokeping/htdocs/ #进入smokeping下htdocs目录
[root@linux-node2 htdocs]# mv smokeping.fcgi.dist smokeping.fcgi #修改smokeping文件名
[root@linux-node2 smokeping]# mv /usr/local/smokeping/etc/config.dist /usr/local/smokeping/etc/config #修改smokeping下etc目录smokeping
1.2修改smokeping配置文件
[root@linux-node2 smokeping]# sed -i 's#cgiurl = http://some.url/smokeping.cgi#cgiurl = http://10.0.0.8/smokeping.cgi#g' /usr/local/smokeping/etc/config
[root@linux-node2 smokeping]# sed -i 's#300#60#g' /usr/local/smokeping/etc/config 秒修改秒
[root@linux-node2 smokeping]# sed -i 's#20#60#g' /usr/local/smokeping/etc/config 秒ping60次
[root@linux-node2 ~]# vim /usr/local/smokeping/etc/config #在presentation添加utf-8中文字符集
*** Presentation ***
charset = utf-8
[root@linux-node2 smokeping]# chmod 600 /usr/local/smokeping/etc/smokeping_secrets.dist #修改密码权限为root只读
1.3修改apache配置文件
[root@linux-node2 htdocs]# htpasswd -c /usr/local/smokeping/htdocs/htpasswd darker #设置登录密码认证 通过apache自带验证功能
New password:
Re-type new password:
Adding password for user darker
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">
AllowOverride None
Options All
AddHandler cgi-script .fcgi .cgi
Order allow,deny
Allow from all
AuthName "Smokeping"
AuthType Basic
AuthUserFile /usr/local/smokeping/htdocs/htpasswd
Require valid-user
DirectoryIndex smokeping.fcgi
</Directory>
1.4设置smokeping启动脚本
[root@linux-node2 ~]# cat /etc/init.d/smokeping #smokeping启动脚本
#!/bin/bash
#
# chkconfig: 2345 80 05
# Description: Smokeping init.d script
# Write by : linux-Leon_xiedi
# Get function from functions library
. /etc/init.d/functions
# Start the service Smokeping
function start() {
echo -n "Starting Smokeping: "
/usr/local/smokeping/bin/smokeping >/dev/null 2>&1
### Create the lock file ###
touch /var/lock/subsys/smokeping
success $"Smokeping startup"
echo
}
# Restart the service Smokeping
function stop() {
echo -n "Stopping Smokeping: "
kill -9 `ps ax |grep "/usr/local/smokeping/bin/smokeping" |
grep -v grep | awk '{ print $1 }'` >/dev/null 2>&1
### Now, delete the lock file ###
rm -f /var/lock/subsys/smokeping
success $"Smokeping shutdown"
echo
}
#Show status about Smokeping
function status() {
NUM="`ps -ef|grep smokeping|grep -v grep|wc -l`"
if [ "$NUM" == "0" ];then
echo "Smokeping is not run"
else
echo "Smokeping is running"
fi
}
### main logic ###
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status
;;
restart|reload)
stop
start
;;
*)
echo $"Usage: $0
{start|stop|restart|reload|status}"
exit 1
esac
exit 0
1.5启动服务以及访问smokeping
[root@linux-node2 ~]# chmod 755
/etc/init.d/smokeping 权限
[root@linux-node2 ~]# chkconfig --add smokeping #将smokeping加入开机启动
[root@linux-node2 ~]# chkconfig smokeping on #设置smokeping为开机启动
[root@linux-node2 ~]# chkconfig httpd on #设置apache为开机启动
[root@linux-node2 ~]# /etc/init.d/httpd restart #重启apache服务
[root@linux-node2 ~]# /etc/init.d/smokeping restart #重启smokeping服务
1.通过浏览器访问smokeping,如图1-1

图1-1
1.6添加需要监控的网站和节点
注意事项:
1)在/usr/local/smokeping/etc/config中添加
2)smokeping就这点不好,添加节点不能在前台Web页面添加,一定要在后台的配置文件中添加。
3)修改/usr/local/smokeping/etc/config后,必须重启smokeping 程序,配置才会生效
4)smokeping 会根据配置文件config
在/usr/local/smokeping/data 之下添加moniter文件夹,其下包含website子文件夹
5)用vmware
workstation的虚拟机测试有一点好处,workstation下的虚拟网卡可以设置出入的丢包率,适合smokeping做丢包测试, 经过测试smokeping检测出的丢包率与vmware worksation虚拟网卡设置的丢包率基本相同,也就是说smokeping 能够反应网络的真实状况。
添加监控节点示例:注意+是第一层,++是第二层,+++ 是第三层
+ 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

smokeping安装部署最佳实践的更多相关文章
- piwik安装部署最佳实践
1.piwik介绍 Piwik是一个PHP和MySQL的开放源代码的Web统计软件,它给你一些关于你的网站的实用统计报告,比如网页浏览人数,访问最多的页面,搜索引擎关键词等等. Piwik拥有众多不同 ...
- Zabbix3.0安装部署最佳实践
Zabbix介绍 1.1zabbix 简介 Zabbix 是一个高度集成的网络监控解决方案,可以提供企业级的开源分布式监控解决方案,由一个国外的团队持续维护更新,软件可以自由下载使用,运作团队靠提供收 ...
- Cobbler自动化部署最佳实践
第1章 Cobbler自动化部署最佳实践 运维自动化在生产环境中占据着举足轻重的地位,尤其是面对几百台,几千台甚至几万台的服务器时,仅仅是安装操作系统,如果不通过自动化来完成,根本是不可想象的. 面对 ...
- tomcat部署最佳实践(一)
Tomcat部署最佳实践 标签: linux 笔者Q:972581034 交流群:605799367.有任何疑问可与笔者或加群交流 tomcat是玩web软件必会技能之一,今天我给大家介绍一下tomc ...
- MySQL安装脚本最佳实践
MySQL安装脚本最佳实践 2018年9月19日 17:01 #!/bin/bash export host_ip=192.168.7.206 echo '#1.取master主机ip的后三位 ...
- Smokeping安装部署
稳定性检测工具smokeping安装配置和使用方法 Smokeping介绍 是对IDC网络质量,稳定性等最好的检测工具,包括常规的 ping,dig,echoping,curl等,可以监视www服务器 ...
- Kubernetes 服务部署最佳实践(二) ——如何提高服务可用性
引言 上一篇文章我们围绕如何合理利用资源的主题做了一些最佳实践的分享,这一次我们就如何提高服务可用性的主题来展开探讨. 怎样提高我们部署服务的可用性呢?K8S 设计本身就考虑到了各种故障的可能性,并提 ...
- Kubernetes 服务部署最佳实践(一) ——如何更好地设置 Request 与 Limit
如何为容器配置 Request 与 Limit? 这是一个即常见又棘手的问题,这个根据服务类型,需求与场景的不同而不同,没有固定的答案,这里结合生产经验总结了一些最佳实践,可以作为参考. 所有容器都应 ...
- Nginx SSL TLS部署最佳实践
本文介绍nginx在提供HTTPS时使用的一些其他配置选项. 虽然这些功能有助于优化nginx的SSL和TLS,但这不是一个完整对加固nginx的介绍. 确保您的服务器安全的最佳方法是不仅需要正确的配 ...
随机推荐
- 特性Attribute 的使用
[IdentityAuthorize] public ActionResult Index() { return View("~/V ...
- InnoDB和Foreign KEY Constraints
InnoDB表中中Foreign Key定义 1. InnoDB允许a foreign key引用一个索引列或者索引组列. 2. InnoDB现在并不支持用户定义的分区表有foreign keys,这 ...
- angular、vue使用感受
最近开始学习并使用vue.js,并使用vue+node开发了一个移动端APP来练手,下面想聊聊我对于vue的粗浅看法,并将它和angular进行一些对比: 1.vue是一个轻量.高效的前端组件化框架, ...
- 康复计划#4 快速构造支配树的Lengauer-Tarjan算法
本篇口胡写给我自己这样的老是证错东西的口胡选手 以及那些想学支配树,又不想啃论文原文的人- 大概会讲的东西是求支配树时需要用到的一些性质,以及构造支配树的算法实现- 最后讲一下把只有路径压缩的并查集卡 ...
- 第十六篇 基于Bootstarp 仿京东多条件筛选插件的开发(展示上)
这几天学习Bootstrap,本来是两年前的用的东西,现在又重新拾起来,又有很多重新的认识,看了Bootstrap的样式偏多,插件现在还没有学习到几个,也有写几个插件自己用的想法.正好工作上也会用到, ...
- 程序员的自我修养:高效使用Google解决问题
如果票选近二十年最伟大的发明,我相信搜索引擎肯定会占据一个不容小觑的位置,它不单是一项发明,更是一项成就,最大程度消灭了信息的不平等.既然人人都可以接触到海量的信息,那么衡量信息财富多寡就只剩下技巧这 ...
- 使用GDI绘制文本
/// <summary> /// 定义一个绘制文本 /// </summary> public void Texts() ...
- find、findIndex、indexOf、lastIndex、includes 数组五种查询条件方法介绍
find() 方法返回数组中满足提供的测试函数的第一个元素的值. 语法: arr.find(callback[, thisArg]) findIndex()方法返回数组中满足提供的测试函数的第一个元素 ...
- 解决VS2015 VBCSCompiler.exe 占用CPU100%的问题
使用VS2015重复编译运行会发现系统运行缓慢甚至卡死,打开windows任务管理器可以发现CPU已经飙到了100%, VBCSCompiler.exe进程出现多个实例并且占用了大量CPU. 解决方案 ...
- 1257: [CQOI2007]余数之和sum
1257: [CQOI2007]余数之和sum Time Limit: 5 Sec Memory Limit: 162 MBSubmit: 2001 Solved: 928[Submit][Sta ...