最近学习Cacti,在一路的学习中遇到了不少的问题。记下自己的学习过程。

分为几个部分:
一、Cacti的概述和安装
二、Cacti的插件安装
三、Cacti监控实例

一、Cacti的概述和安装
1、概述
    Cacti是一个用php写的一个开源软件,扩展性很强,在这个软件上开发了很多插件,由此Cacti功能变得非常强大。其常见的插件有:setting、flowviewer、network weathermap、monitor、discovery等。
具体的框架和工作流程如下:

Cacti的框架


Cacti的工作流程
2、安装
   安装过程包括几个方面:LAMP环境搭建、rrdtool的安装、net-snmp的安装、spine的安装,最后是Cacti的安装。
1)LAMP环境的安装
   这个过程在这里省略了,我采用的源码编译安装的方式。安装顺序mysql、apache、php。
注意:安装过程完后,访问http://192.168.1.168/cacti 页面提示错误说是“sockets没有安装”无法正常的访问,最后加上了--enable-sockets参数重新编译问题解决。

2)rrdtool的安装
    rrdtool在Cacti中是用来进行数据统计和绘图的一个工具。它在安装的时候需要很多库的支持。我安装过程中失败很多次,最终根据群友的提示,艰难把他安装好了!步骤如下:
#wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.3.8.tar.gz
#yum -y install intltool zlib zlib-devel libpng libpng-devel freetype freetype-devel libart_lgpl libart_lgpl-devel pango pango-devel cairo-devel libart_lgpl libart_lgpl-devel
#tar rrdtool-1.3.8.tar.gz
#./configure --prefix=/usr/local/rrdtool --disable-python --disable-tcl
#make
#make install

3)net-snmp的安装
    net-snmp是用于采集监控段的数据,监控系统本身中也要安装,实现对自己监控系统的监视。这个软件我采用的rpm包进行安装,步骤如下:
#mount /dev/cdrom /mnt
#cd /mnt/CentOS
#rmp -ivh net-snmp-5.3.2.2-5.el5.i386.rpm
#rmp -ivh net-snmp-devel-5.3.2.2-5.el5.i386.rpm
#rmp -ivh net-snmp-perl-5.3.2.2-5.el5.i386.rpm
#rmp -ivh net-snmp-utils-5.3.2.2-5.el5.i386.rpm
    当然在安装的时候会遇到依赖性问题,我采用yum安装的方式,有时候可以解决一些问题。
注意:在没安装net-snmp-perl和net-snmp-utils时,没有snmpget和snmpwalk这个连个命令。安装后就科解决这个问题。

4)spine的安装
wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7a.tar.gz
tar zxvf cacti-spine-0.8.7a.tar.gz
cd cacti-spine-0.8.7a
./configure
make && make install

安装完后要修改下配置文件:
vi /etc/spine.conf
DB_Host                 localhost
DB_Database           cacti
DB_User                 cacti
DB_Pass                 2010
DB_Port                  3306

5)Cacti的安装

#wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7e.tar.gz
#tar zxvf cacti-cactid-0.8.7e.tar.gz
#mv cacti-cactid-0.8.7e /usr/local/apache2/htdocs/cacti

a.修改他的配置文件
vi /usr/local/apache2/htdocs/cacti/include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "2010";
$database_port = "3306";

b.添加用户并且增加例程
#useradd cacti
#cd /usr/local/apache2/htdocs/cacti/
#chown -R cacti log rra
#echo "*/5    * * * * /usr/local/php/bin/php /usr/local/apache2/htdocs/cacti/poller.php >/dev/null 2>&1" >>/etc/crontab

c.导入数据
#mysql –uroot –p
Password:
mysql> create database cacti;
Query OK, 1 row affected (0.00 sec)
mysql> grant all on cacti.* to cacti@localhost identified by “cacti”;
Query OK, 1 row affected (0.00 sec)
mysql> exit
# cd /usr/local/apache/htdocs/cacti
# mysql –uroot –p cacti < cacti.sql
Password:

d.完成安装
在浏览器里输入 http://192.168.1.168/cacti 进入安装向导。
在设置cacti用到的命令路径:设置这些路径一点要正确,如果出现错误的配置项,向导会以红色进行提示。设置错误会导致无法收集被监控端的信息,这一点非常重要!安装完成会提示用账号和密码进行登陆,默认的账号和密码都是admin。进入后可以熟悉一些软件的一些选项和功能。^_^