本次smokeping服务搭建是基于centos7系统平台且是使用apache1,开始搭建之前需要关闭centos的SElinux服务和防火墙服务,不然搭建过程中,部分服务权限会受影响而搭建不成功。
1、关闭selinux服务
临时关闭selinux
setenforce 0 //该命令临时关闭centos下的selinux服务
永久关闭selinux
要永久禁用该服务,请使用文本编辑器(例如vi)并按照以下说明编辑/ etc / sysconfig / selinux文件,将SELINUX= enforcing 改为 SELINUX=disabled,并重启centos生效。
最后用 sestatus 命令查看是否关闭成功
2、关闭防火墙firewall
# systemctl disabled firewalld //关闭centos防火墙服务
# systemctl status firewalld //查看当前防火墙服务状态
3、下载lrzsz工具,能直接将安装包上传至centos服务器,可直接将相关安装包拉至centos服务器内
yum -y install lrzsz //下载lrzsz工具
4、 安装相关软件包
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 perl-Sys-Syslog
5、编译安装libidn:
tar zxf libidn-1.9.tar.gz
cd libidn-1.9
./configure && make && make install
6、编译安装依赖软件echoping:
tar zxf echoping-6.0.2.tar.gz
cd echoping-6.0.2
./configure && make && make install
7、编译安装依赖软件fping:
tar zxf fping-3.10.tar.gz
cd fping-3.1.0
./configure && make && make install
8、安装smokping:
tar -xf smokeping-2.6.9.tar.gz
cd smokeping-2.6.9
./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty
./configure --prefix=/usr/local/smokeping
/usr/bin/gmake install
9、smokeping环境配置:
cd /usr/local/smokeping/ //第8步完成会自动创建该目录
mkdir cache data var //在smokeping目录下创建三个新目录
touch /var/log/smokeping.log //创建smokeping日志文件
10、授权文件
chown apache:apache cache data var
chown apache:apache /var/log/smokeping.log
chmod 600 /usr/local/smokeping/etc/smokeping_secrets.dist
cd /usr/local/smokeping/htdocs
mv smokeping.fcgi.dist smokeping.fcgi
cd /usr/local/smokeping/etc
mv config.dist config
11、修改smokeping的配置文件config
vi /usr/local/smokeping/etc/config //修改配置文件 config
cgiurl = http://211.147.235.90/smokeping.cgi
*** Database ***
step = 60 #此处建议改为 60 , 一分钟采集一次数据,然后修改step,从300改为60,这是检测的时间, pings 从20 改为60, 即60秒ping 60次
pings = 60
#binary = /usr/sbin/fping
binary = /usr/local/sbin/fping //smokeping的默认配置文件110行的fping安装目录与此次安装目录不相符需修改
12、配置apache:
vi /etc/httpd/conf/httpd.conf
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>
在/etc/httpd/conf/httpd.conf 文件最后添加以上代码。
13、添加web访问用户:
cd /usr/local/smokeping/htdocs
htpasswd -c /usr/local/smokeping/htdocs/htpasswd admin //输入这条代码后会让你添加密码
14、设置开机启动
echo "/usr/local/smokeping/bin/smokeping --logfile=/var/log/smokeping.log 2>&1 &" >> /etc/rc.local
su - apache /etc/rc.d/init.d/smokeping start
su - apache /etc/rc.d/init.d/smokeping start --logfile=/var/log/smokeping.log
15、限速中午字符并手工启动
显示中文
vim /usr/local/smokeping/etc/conf
*** Presentation ***
charset = utf-8 #添加此行,大概第50行
/usr/local/smokeping/bin/smokeping --logfile=/var/log/smokeping.log
16、添加节点监控
vi usr/local/smokeping/etc/config
+TJYD //添加监控目录
menu = 天津西青机房
title = 天津西青机房
host = /TJYD/JD //主机名称,若有多个监控子目录 用空格隔开即可
++ JD //添加监控子目录
menu = JD
title = JD-111.31.110.254
host = 111.31.110.254 //添加监控IP
//TJYD为节点监控模板
17、重启httpd
service httpd restart
启动smokeping
perl /usr/local/smokeping/bin/smokeping --logfile=/var/log/smokeping.log //手动启动smokeping
18、本次搭建smokeping有一个弊端,就是smokeping的重启只能先关闭进程,在手动启动smokeping,为了方便重启smokeping,可以使用脚本方便快速地重启smokeping,一共有2种方法
①创建一个脚本killsm.sh,需要重启smokeping就启用脚本即可
vi /killsm.sh //创建脚本文件
#!/bin/bash
ID=`ps -ef | grep smokeping | grep -v "grep" | awk '{print $2}'`
echo $ID
echo "---------------"
kill -9 $ID
echo "killed $ID"
echo "---------------"
/usr/local/smokeping/bin/smokeping --logfile=/var/log/smokeping.log //以上就是脚本代码
②添加smokeping服务,可以用systemctl restart smokeping 命令重启smokeping服务
上传smokeping文件至/etc/init.d/目录
# chmod 755 /etc/init.d/smokeping #添加脚本755权限
# chkconfig --add smokeping #将smokeping加入开机启动
# chkconfig smokeping on #设置smokeping为开机启动
# systemctl restart smokeping #重启smokeping服务
最后本次搭建的相关文件均可通过百度云盘获取
链接:https://pan.baidu.com/s/1JvUAQ9q7fer2hvDq74P5fQ
提取码:tj55