Smokeping 安装配置

一、准备工作:

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、安装lamp环境和rrdtool图形处理及其他所需依赖库:

1 yum -y install perl perl-Net-Telnet perl-Net-DNS perl-LDAPperl-libwww-perl perl-RadiusPerl perl-IO-Socket-SSL perl-Socket6perl-CGI-SpeedyCGI perl-FCGI perl-CGI-SpeedCGI perl-Time-HiResperl-ExtUtils-MakeMaker perl-RRD-Simple rrdtool rrdtool-perl curl fpingechoping  httpd httpd-devel gcc make  wget libxml2-devel libpng-devel glib pangopango-devel freetype freetype-devel fontconfig cairo cairo-devel libart_lgpllibart_lgpl-devel mod_fastcgi screen fping

 

二、开始安装

1、下载安装smokeping程序

1 wget http://oss.oetiker.ch/smokeping/pub/smokeping-2.6.9.tar.gz

 

tar -zxvf smokeping-2.6.9.tar.gz  #解压.tar.gz压缩包

 cd smokeping-2.6.9  #进入解压包后的程序目录

./configure-prefix=/usr/local/smokeping  #smokeping程序安装在/usr/local/smokeping/路径下 

##如果是第一次安装smokeping程序一般会出现报错说没有perl模块支持需要安装模块后在执行安装程序##

 

 ./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty #根据报错提示安装perl模块 

###如果安装perl模块时出现

 

则需要下载安装perl-devel 和perl-ExtUtils-Embed Centos 系统可直接yum installperl-devel perl-ExtUtils-Embed -y (总之,提示少什么插件你就安装什么插件)安装后再执行./setup/build-perl-modules.sh/usr/local/smokeping/thirdparty2

 ./configure prefix=/usr/local/smokeping #perl 模块加载完成后再次执行安装程序

###### 此时,安装成功后,会提示编译,按照要求编译 #######

 

/usr/local/gmake install 

##############至此程序已经初步安装完成###################

三、配置smokeping

1、创建cache vardata 三个目录和smokeping.log日志文件

 cd /usr/local/smokeping

 mkdir cache data var

 touch /var/log/smokeping.log

2、给刚刚创建的文件和目录授予apache权限

    cd /usr/local/smokeping

    chown-R apache:apache cache data var

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

 执行完后ls 查看一下结果是否正确:

 

修改配置文件和自动生成文件目的就是文件位置和config配置中一致

     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或者域名##

##找到 ***Database*** step(监测时间)pingsping次数的值改成自己设定的#####都改为60就是60ping60##

 

完成之后修改验证密码文件权限

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

 

四、修改apache配置

 1 vim /etc/httpd/conf/httpd.conf

 2####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

DirectoryIndexsmokeping.fcgi

</Directory>

 

六、设置开机启动apachesmokeping进程,并关闭防火墙

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

2 chkconfig httpd on

3 chkconfig iptablesoff

七、启动httpdsmokeping

1 service httpdrestart

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

八、打开web界面测试

### 如果返回 “500”错误  说明selinux 选项没有关闭 ###

1 vim/etc/sysconfig/selinux

改成 Selinux=disable或者selinux=permissive

九、设置web用户名和密码

1 cd /usr/local/smokeping/htdocs

2 htpasswd -c/usr/local/smokeping/htdocs/htpasswd admin    #设置账号为admin 密码在回车后提示输入

 

 

十、同步主机时间和配置config 参数

1 cd/usr/local/smokeping/htdocs

2 htpasswd -c/usr/local/smokeping/htdocs/htpasswd admin    #设置账号为admin 密码在回车后提示输入

###至此,smokeping安装已经全部完毕,剩下的是添加smokeping插件并设置其监控参数  ####

 

 

主从

做主从模式,可以在smokeping页面上看到不同节点(master和各slaveping目标的检测情况,有助于判断故障所在的网络节点

工作模式

多节点的主从模式中,只有master节点上有监控配置文件。slave节点只需要配置验证密码(用于master-slave之间的验证)、在启动smokeping时附上相应的启动参数(参数中包括masterURL等),slave就会在找到master,从master上获取需要检测的节点,在本机(slave)进行ping检测,并将检测结果反馈给master

master-slave之间信息交流的方式是通过URL浏览器访问smokepingURL进行的。所以slave必须能正常访问master端的URL

slave软件安装

从机只需要安装smokeping不需要web服务器。当然安装smokeping之前需要装好其依赖的软件和perl模块。安装过程与单节点模式的安装过程一样,不赘述

注意除了编译安装smokeping也要建立datavarcache目录

slave配置

slave只需要配置一个密码文件用于连接master时的验证。不需要做其他配置。

创建密码文件(文件名自定)

echo"******" > /usr/local/smokeping/etc/smokeping_slave_secrets

chmod 600smokeping_slave_secrets

master配置

创建密码文件

vim smokeping_secrets

 

${slave_1节点名称}:*******

${slave_2节点名称}:*******

master的密码文件可以配有多个slave的节点和密码每个以":"分隔的节点名称和密码一行这点与slave不同slave的密码文件中只有一个密码

修改主配置文件

vim etc/config

 

# 指定使用的密码文件

*** Slaves ***

secrets=/usr/local/smokeping/etc/smokeping_secrets

 

# 指定要让slave检测哪些目标

+ IDC1

menu = IDC1

title = DIC1

remark = IDC机房1

slaves = ${slave节点名称}

两点说明

1.  只有当slave节点在某些目标的检测配置中被使用slave端才能成功连上master并进行检测工作

2.  可以把一个slave配置在一个底层节点上(例如一个受监控的IP),使slave检测该服务器
也可以把slave配置在一个上层节点上,使slave检测该节点下属的所有服务器

slave启动

bin/smokeping--master-url=http://smokeping.master.com/smokeping.fcgi--cache-dir=/usr/local/smokeping/htdocs/cache/--shared-secret=/usr/local/smokeping/etc/smokeping_slave_secrets--slave-name=192.168.X.X

Oh 参数太长,容易断行···

注意几点

--slave-name 节点名称必须与master端配置的名称一致
--shared-secret=/usr/local/smokeping/etc/smokeping_slave_secrets 指定要使用的密码文件
--cache-dir 必须让进程具有读写权限。smokeping.pid会存放在该目录下

正常启动时的输出

Sent data to Server and got new config in response.

Note: logging to syslog as local0/info.

Daemonizing/usr/local/smokeping/bin/smokeping ...

 

 

 

分割线
打赏
YWSOS.COM 平台代运维解决方案
 评论
 发表评论
姓   名:

Powered by AKCMS