大家都知道企业线上服务器是不可能手工一台一台来安装相关服务的。例如lnmp这种web环境,手工一台一台装的话费时费力。通常我们屌丝运维的做法是写个脚本,让脚本来帮我们进行哪些琐碎的编译配置和安装。
既然生产环境上跑了大量的服务器和生产业务,那么就少不了监控系统来帮我们实时监控服务器状态。下面我们就来学习在现有lnmp的web环境下,快速构建cacti监控系统。没有web环境的朋友们,请自行搭建web环境。
服务器环境:
- os环境:Centos 5.8_x86_64
- WEB环境:nginx 、php、 mysql
准备工作:
- wget http://www.cacti.net/downloads/cacti-0.8.8a.tar.gz
- wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.7.tar.gz
- wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.8a.tar.gz
- wget http://jaist.dl.sourceforge.net/project/net-snmp/net-snmp/5.4.4/net-snmp-5.4.4.tar.gz
- yum install cairo-devel libxml2-devel pango-devel
- tar zxvf net-snmp-5.4.4.tar.gz
- cd net-snmp-5.4.4
- ./configure
- make
- make install
- cd ..
- tar zxvf rrdtool-1.4.7.tar.gz
- cd rrdtool-1.4.7
- ./configure
- make
- make install
- cd ..
- ln -s /data/app/net-snmp/bin/* /usr/local/bin/
- ln -s /data/app/rrdtool/bin/* /usr/local/bin/
开始安装CACTI:
- tar zxvf cacti-0.8.8a.tar.gz
- mv cacti-0.8.8a /data/www/html/cacti
- cd /data/www/html/cacti
- /data/app/mysql/bin/mysql -uroot -S /tmp/mysql.sock -p"123!@#"
- mysql> create database cacti;
- mysql> grant all on cacti.* to cactiuser@'localhost' identified by 'cactiuser';
- mysql> flush privileges;
- mysql> exit
- /data/app/mysql/bin/mysql -ucactiuser -S /tmp/mysql.sock -pcactiuser cacti < cacti.sql
vim include/config.php
输入URL:,进入cacti欢迎安装界面。
选择全新安装,还是历史版本升级。
cacti需要的各个程序的默认安装路径如下。
如果你有看到“ERROR: FILE NOT FOUND”字样,说明cacti在相关路径下没有找到程序文件,请检查是否成功创建了软连接。
安装完成后的登录界面,首次登录,默认账户和密码都是admin,请自行修改密码和相关用户权限。
- chmod 777 /data/www/html/cacti/rra
- chmod 777 /data/www/html/cacti/log
- crontab -e
- */5 * * * * /data/Chunbai/app/php/bin/php /data/www/html/cacti/poller.php
添加一个设备,并生成图像,测试是否已经安装成功。
Cacti安装目录下有个cli文件夹,大家可以了解下里面的PHP脚本。可以帮助你实现批量添加服务器到监控系统。
关于批量添加的具体方法请参阅:
本文转自 cyr520 51CTO博客,原文链接:http://blog.51cto.com/cyr520/1064619