天天看点

centos6.5 下smokeping的安装

环境:Centos6.5_x86_64

1.       关闭selinux和iptables

#setenforce 0

#vim /etc/sysconfig/selinux

将SELINUX改为disabled

#/etc/ini.d/iptables stop

2.       安装环境包

a)        # yum –y groupinstall “Developmenttools”

b)        yum -y install libxml2-devellibpng-devel glib pango pango-devel freetype freetype-devel fontconfig cairocairo-devel libart_lgpl libart_lgpl-devel perl perl-Net-Telnet perl-Net-DNSperl-LDAP perl-libwww-perl perl-RadiusPerl perl-IO-Socket-SSL perl-Socket6perl-CGI-SpeedyCGI rrdtool-perl

其中glib、perl-RadiusPerl、perl-CGI-SpeedyCGI需要手动安装

c)        安装glib

l  下载glib压缩包:glib-2.34.2.tar.xz

#tar -xf glib-2.34.2.tar.xz

#cd glib-2.34.2

#./configure

#make &&make install

此时可能会报错,缺少zlib和libffi的开发包(devel),yum安装一下即可,重新编译glib即可。

d)       安装RadiusPerl

l  下载RadiusPerl压缩包:RadiusPerl-0.22.tar.gz

#tar –xvf RadiusPerl-0.22.tar.gz

#cdAuthen-Radius-0.22/

查看此目录下的INSTALL文件,里面有介绍安装方法

#perlMakefile.PL

如果提示错误如缺少HexDump,可以在http://search.cpan.org/搜索到相关的perl编写的软件包,进而下载编译即可

#make

#make test                //测试一下,如果提示ok表示成功

#make install

e)        安装CGI-SpeedyCGI

l  下载CGI-SpeedyCGI软件包:CGI-SpeedyCGI-2.22.tar.gz

#tar xf CGI-SpeedyCGI-2.22.tar.gz

#cd CGI-SpeedyCGI-2.22/

查看此目录下的README文件同样会有安装方法

l  安装

#perlMakefile.PL

         此时会提示错误,需要下载安装mod_speedycgi和perl-CGI-SpeedyCGI的rpm包

可以在ftp://195.220.108.108上下载

#lftp195.220.108.108

进入/linux/epel/6/x86_64目录,下载mod_speedycgi和perl-CGI-SpeedyCGI的rpm包

彼此的版本要对应。本环境下用的是perl-CGI-SpeedyCGI-2.22-8.el6.x86_64.rpm

和mod_speedycgi-2.22-8.el6.x86_64.rpm

由于此环境是centos6-x86_64系统,因此进入/linux/epel/6目录

#rpm –ivh perl-CGI-SpeedyCGI-2.22-8.el6.x86_64.rpm

#rpm –ivh mod_speedycgi-2.22-8.el6.x86_64.rpm

#perlMakefile.PL

#make

#make test                //提示ok表示成功

#make install

3.       下载安装rrdtool

下载rrdtool压缩包:rrdtool.tar.gz

#tar xf rrdtool.tar.gz

#cdrrdtool-1.4.8/

#./configure –prefix=/usr/local/rrdtool

#make &&make install

默认rrdtool画出的图不支持中文,可以使用下面的方法

#cdrrdtool-1.4.8/

#sed -i's/setlocale(LC_NUMERIC, "C")/setlocale(LC_ALL,"zh_CN.gb2312")/g' src/rrd_graph.c

#yum -ygroupinstall "Chinese Support"

#wgethttp://mirror.centos.org/centos/6/os/x86_64/Packages/wqy-zenhei-fonts-common-0.9.45-3.el6.noarch.rpm

# rpm -ivhwqy-zenhei-fonts-common-0.9.45-3.el6.noarch.rpm

然后,重新编译安装rrdtool

4.       安装smokeping依赖的软件

Smokeping官网上都有提供smokeping依赖的软件包的下载资源

a)       安装cgilib

# tar xfcgilib-0.5.tar.gz

#cd cgilib-0.5/

#make

# cp libcgi.a/usr/local/lib

# cp cgi.h/usr/include

b)      安装fping

#tar xf fping-3.10.tar.gz

#cd fping-3.10/

#./configure

#make

#make check

#make install

#whereis fping           //查看fping命令的路径

c)       安装echoping

#tar xf echoping-5.2.0.tar.gz

#cd echoping-5.2.0/

#./configure

#make

#make test

遇到测试不成功信息,按ctrl+c回到命令行,这是由于去烧popt支持,安装popt还需要gettext支持。因此首先安装gettext

l  安装gettext

#tar xf gettext-0.18.tar.gz

#cd gettext-0.18/

#./configure

#make &&make install

l  安装popt

# tar xfpopt-1.14.tar.gz

# cd popt-1.14/

#./configure

#make &&make install

l  安装echoping

#cdechoping-5.2.0/

#./configure

#make &&make install

5.       安装smokeping

#tar xf smokeping-2.6.9.tar.gz

#mv smokeping-2.6.9smokeping

#cd smokeping

#./configure –prefix=/usr/local/smokeping

编译时会报错提示缺少很多的扩展程序,会提示执行下面的操作

#./setup/build-perl-modules.sh/usr/local/smokeping/thirdparty

重新编译

#./configure –prefix=/usr/local/smokeping

#gmake install

此处有可能会报错往往是由于之前的环境没有安装好,缺少相关的软件和模块,按照错误提示进行相应的软件或模块的安装,然后重新编译即可

6.       配置smokeping

a)      修改bin目录下的smokeping文件

# cd/usr/local/smokeping/bin

#vim smokeping

修改use lib qw();为use libqw(/usr/local/rrdtool/lib/perl);

b)      重命名htdocs目录下的smokeping.fcgi.dist为smokeping.fcgi

# cd/usr/local/smokeping/htdocs

#mvsmokeping.fcgi.dist smokeping.fcgi

c)      修改etc目录下的config文件

# cd/usr/local/smokeping/etc

#cp config.distconfig

#vim config

配置文件很容易看懂,按需修改即可。

其中,需要把fping命令的二进制路径修改为实际路径:

binary = /usr/local/sbin/fping

step = 300 表示的是数据刷新时间,默认是300s,可自行修改

监控主机是分层结构的,用+号表示

例如+第一层 ++第二层 +++第三层,可根据实际情况修改。

设备名中不能有”.”和”-“存在

如果不做主从服务器,可以把其中的slaves项目中的内容删除。

另外,etc/examples目录下面又很多分类的配置文件实例,可以直接copy过来,修改其中内容即可。

d)      创建存放那个数据文件的目录并修改权限

#cd/usr/local/smokeping

#mkdir data varcache

#chmod –R 777./data ./var ./cache

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

e)      修改smokeping的目录为apache运行用户的属主和属组

直接修改属主和属组为apache即可

#chown –Rapache.apache /usr/local/smokeping

f)       创建smokeping的log文件

#touch/var/log/smokeping.log

#chownapache.apache /var/log/smokeping.log

g)      修改http配置文件

#vim/etc/httpd/conf/httpd.conf

在最后添加下面内容:

Alias /smokeping"/usr/local/smokeping/htdocs/smokeping.fcgi"

Alias /cache"/usr/local/smokeping/cache"

Alias /cropper"/usr/local/smokeping/htdocs/cropper/"

<Directory/usr/local/smokeping>

        AllowOverride None

       AddHandler cgi-script cgi fcgi

        Options ExecCGI

        Order allow,deny

        Allow from all

        DirectoryIndex smokeping.cgi

</Directory>

7.       启动smokeping

#perl/usr/local/smokeping/bin/smokeping –logfile=/var/log/smokeping.log

Ps:可以建立smokeping的启动脚本,方便启动,可以从网上搜索。

8.       设置开机启动httpd服务

#/etc/init.d/httpdstart

#chkconfig httpdon

如果建立了smokeping的脚本,也可以设置为开机启动服务

#chkconfigsmokeping on

9.       开启iptables

#/etc/init.d/iptables start

# iptables -A INPUT -p tcp -m state --state NEW -m tcp--dport 80 -j ACCEPT   //开放80端口

#/etc/init.d/iptables save|restart

Ps:暂时未发现如何设置selinux使它与smokeping服务并存

至此安装配置完成,访问http://IP/smokeping 即可

继续阅读