Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具.Cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形.
它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户,snmp抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目录的rra文件夹下)。

lamp下cacti的安装
首先安装监控所需的协议snmp net-snmp net-snmp-utils php-snmp
下载cacti软件 绘图软件rrdtool-1.4.7-1.mage.i386.rpm rrdtool-ruby-1.4.7-1.mage.i386.rpm rrdtool-devel-1.4.7-1.mage.i386.rpm rrdtool-perl-1.4.7-1.mage.i386.rpm  cacti-0.8.8.tar.gz

 yum -y --nogpgcheck localinstall rrdtool-*.rpm net-snmp net-snmp-utils php-snmp

安装cacti

1 解压cacti到apache网页存放位置tar xf cacti-0.8.8.tar.gz -C /var/www/html

2 建立cacti用户useradd -r cactiuser

3 启动snmp
vim /etc/snmp/snmo.conf
修改com2sec notConfigUser default   public 这一行的default为127.0.0.1
修改access  notConfigGroup   any  noauth  exact systemview none none这一行的systemview为all
启用view all included  .1      80这一项

service snmp start
snmp开机自动启动 checkconfig snmpd on
4 连接mysql 创建cacti数据库 并建立用户
create database cacti;
grant all on cacti.* to cactiuser@localhost identified by 'cactiuser';
grant all on cacti.* to cactiuser@127.0.0.1 identified by 'cactiuser';
flush privileges;

5 配置cacti
cd /var/www/html
创建连接 ln -sv cacti-0.8.8 cacti
导入数据库
cd cacti
mysql cacti < cacti.sql
改变cacti目录的权限
chown -R root.root .
chown -R cactiuser.cactiuser rra/ log

cd include/
vim config.php
添加$url_path = "/cacti/";

定义每隔5分钟自动执行
crontab -e -u cactiuser
*/5 * * * * /usr/local/php/bin/php /www/html/cacti/poller.php &> /dev/null