一、        cacti介绍:

Cacti是一套基于PHP,MySQL,SNMPRRDTool开发的网络流量监测图形分析工具。

Cacti是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,功能非常强大完善。界面友好。 Cacti 的发展是基于让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量跟系统资讯监控外,Cacti 也可外挂 Scripts 及加上 Templates 来作出各式各样的监控图。cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。因此,snmprrdtoolcacti的关键。Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。

二、cacti安装与配置

1、(1LAPM安装,这里本地安装。你可以LAMP用编译安装

rpm安装方法

yum install php httpd php-mysql mysql-server net-snmp net-snmp-utils -y

yum list all | grep php
yum install php-snmp

安装php支持snmp ,php-snmp模块

service httpd|mysqld start 测试网站是否成功
service snmpd start

   2)配置snmp配置文件

 [root@wl  tmp]# vim /etc/snmp/snmpd.conf

更改 1com2sec notConfigUser  default       public

改为:com2sec notConfigUser   127.0.0.1       public

2access  notConfigGroup “”      any       noauth    exact  systemview  none none

改为:access  notConfigGroup “”      any       noauth    exact  all  none  none

3#view all    included  .1         80

将前面的 # 注释 去掉。
service snmpd restart
 
2、下载cacti,rrdtool等工具安装,地址:http://www.cacti.net/
下载cacti-0.8.7g.tar.gz   rrdtool-1.4.7-1.i386.rpm  rrdtool-perl-1.4.7-1.i386.rpm
yum -y --nogpgcheck localinstall rrd *.rpm
man rrdtool
3、安装cacti

(1)cacti不能用管理员身份运行,需要普通用户身份运行cactiuser

useradd -r cactiuer   //创建用户

2)、解压网页

tar xf cacti-0.8.7g.tar.gz  -C  /var/www/html
 http://127.16.23.1/cacti这样访问
ln -sv cacti-0.8.7  cacti
4、改cacti网站目录属组,主,及两个数据文件 rra/  log/需要cactiuser用户身份运行
 cd /var/www/html/cacti
chown -R root.root .

chown -R cactiuser.cactiuser   rra/ log/    需要写数据

 
5、先创建cacti数据库,再导入cacti数据库,及创建能访问数据库的cactiuser用户,
创建数据库 
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'

mysql cacti <cacti.sql   cacti.sql 导入数据库

use cacti; cacti身份验证能否访问数据库
6、修改..include/config.php内容
 
vim config.php

$url_path="/cacti/"; //网页访问方法

 
7、定期执行poller.php脚本,来获取对象数据,poller.php在网页存放位置
poller.php 5分种执行一次

which php  //需要php命令执行poller.php脚本 ,获取php二进制位置

两种方式让poller.php脚本每5分钟执行一次

第一种方式
vim  /etc/crontab

*/5 * * * *  cactiuser  /usr/local/php/bin/php       /www/html/cacti/poller.php &> /dev/null  //必须指定用户

第二种方式用cacti用户身份运行
crontab -e -u cactiuser

*/5 * * * * /usr/local/php/bin/php       /www/html/cacti/poller.php &> /dev/null

 
8、安装cacti,登录设置
http://172.16.23.1/cacti/
默认用户名,密码admin
首次登录需改用户名,密码
 
9、导入模板进行监控
模板可从网上搜索下载:这里以mysql模板为例
绘图的模板导入 import templates    cacti_host_template_x_db_server
ss_get_mysql_stats.php脚本放入scripts目录下 
 注:ss_get_mysql_stats.php获取mysql数据模板,
监控主机 选择 new graphs  主机 模板类型 模板
选择graphs按钮,大约过几分钟就会出来监控图
10、其它
错误日志:/var/www/html/cacti/log/cacti.log

数据文件  /var/www/html/cacti/rrd/