每个星期四,部门齐聚开会,各抒己见;;我已经有6个周会没有发言过了。。。不知道说什么,团队的氛围或者我自己的问题很不融洽,说什么都觉得多余;不过今天结束的特别早;趁着功夫,发一篇smokeping的文档吧;
1、前言
其实smokeping这个工具自打我来公司就开始接触了,只不过大家都是单机做个监控,连基础的邮件告警都没有,我表示对于这样都能凑合的IDC团队也是无语到极致。。日夜交替的值班生活经历了1年后,我开始转白班,早九晚五的生活其实也不是很舒服;白班后,我就开始琢磨怎么样把smokeping优化成一个好一点的监控软件,因为我本身是网络出生,对运维一点经验都没有,一步一步摸索着,也算是把我想要的给弄出来了;
2、smokeping安装
来公司前一直做系统集成,IDC的环境没有接触过,更别提什么linux运维和什么网络监控了,所以一开始的smokeping安装,我也是迷茫的,根本没有linux基础的我无从下手,只能看着比我先来的同事弄个什么脚本一键执行然后就看着屏幕的字母刷刷刷的跑,然后待一切都停止后,打开浏览器试试,如果不行,老同事就会上报,让运维部的同事来处理,处理完后,又一副老练的神色添加目标IP。。。几年的工作经验告诉我,如果我也这样的话,趁早走吧;
于是,我开始琢磨各种安装文档,最后写出了自己的脚本,没有任何编程基础,用简单的shell写的,可能会适合一些朋友使用;
http://pan.baidu.com/s/1jIvAvQI 如果打不开或者有疑问直接找我QQ吧 731019400;
其实安装很简单,yum一些工具,cpanm一些模板,编译smokeping安装到指定路径,修改配置文件,启动httpd;下面我贴一下命令,如果下列任何步骤都没问题的话,基本安装就成功了;
(1)、yum安装依赖RPM包;
yum -y install httpd beecrypt beecrypt-devel curl curl-devel freetype freetype-devel fontconfig fontconfig-devel gettext gettext-devel ImageMagick ImageMagick-devel mingw32-iconv.noarch libmcrypt libmcrypt-devel libpng libpng-devel libxml2 libxml2-devel libxslt libxslt-devel mhash mhash-devel mcrypt zlib zlib-debel gd gd-devel libjpeg libjpeg-devel
(2)、安装相关依赖模块;
首先下载cpanm工具,安装模块时候需要使用该工具,然后给予执行权限,可以参考下面的shell;
/#!/bin/bash
for modules in FCGI CGI CGI::Fast Config::Grammar Digest::HMAC_MD5 Net::Telnet Net::OpenSSH Net::SNMP Net::LDAP Net::DNS IO::Pty LWP;do
cpanm --mirror http://mirrors.163.com/cpan --mirror-only --force $modules
echo -e "\e[1;31m$modules-Install-Complete\e[0;m"
done
(3)、编译安装smokeping;
tar zxvf smokeping-2.6.11.tar.gz
cd smokeping-2.6.11
./configure --prefix=/usr/local/smokeping
如果configure文件没有权限可以使用chmod o+x * 给于执行权限,此处会进行编译,同时校验依赖模块,如果依赖模块不通过,就会让你执行
报错提示::
./setup/build-perl-modules.sh /usr/local/smokeping/thirdparty来安装依赖模块,这个脚本安装模块都是通过国外网站来执行,所以会很慢或者直接无法安装,所以之前手动安装的好处就体现了。
如果手动安装依旧报如下的错误,此时再次执行之前的安装模块命令,再次安装报错的模块即可;
(4)、编译后执行安装:
/usr/bin/gmake install
安装smokeping
安装后创建相关文件和配置相关信息;
cd /usr/local/smokeping
mkdir cache data var
touch /var/log/smokeping.log
chown apache:apache cache data var
chown apache:apache /var/log/smokeping.log
cd /usr/local/smokeping/htdocs/
cp smokeping.fcgi.dist smokeping.fcgi
cd /usr/local/smokeping/etc
chmod 600 smokeping_secrets.dist
cp config.dist config
注意事项,在smokeping目录下要创建cache data var 这3个目录,分别是用来存放图片缓存,rrd数据,文件,并且要给apache权限,因为我们使用#apache来承载smokeping业务;
(5)、确认完毕后配置httpd信息并且启动程序:
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
DirectoryIndex smokeping.fcgi
</Directory>
service httpd start
启动apache
/usr/local/smokeping/bin/smokeping
启动smokeping
此时因注意防火墙方形httpd端口,同时关闭selinux
访问http://.../smokeping
网友评论