V1.2 # 1.1edit 0625    #1.2 update 2010.11
环境:lamp + net-snmp  , centos5.3 ,
官网:www.cacti.net  ,依赖下载 http://oss.oetiker.ch/rrdtool/pub/libs/    扩展插件http://cactiusers.org/
版本:cacti0.8.7g  (该版本程序目前未汉化,中文部分供参考无实际效果。 0.8.7e 版本已汉化)
rrdtool-1.4.4

一.依赖

Cacti requires MySQL, PHP, RRDTool, net-snmp, and a webserver that supports PHP

1.
php-5.1.6
php-common--
php-cli--
php-mysql
php-pdo--
**php-snmp     此模块缺失可能导致crontab无法自动画图!!

2.
mysql-server
mysql

3.
net-snmp-libs
net-snmp-utils
net-snmp-5.3.2.2
lm_sensors-

4.
rrdtool

5.额外(与扩展【模块】相关,未扩展可不装。)
perl-Net-Daemon
perl-PlRPC
perl-DBI
perl-rrdtool
perl-DBD-MySQL
net-snmp-devel
net-snmp-perl


二、rrdtool
#####################################################
#
# RRDTOOL 1.4.4
#
#####################################################
依赖:http://cairographics.org/releases/     http://oss.oetiker.ch/rrdtool/pub/libs/   另参照doc/rrdbuild.txt
pango-1.14.9  , pango-devel ,airo-1.2.4 ,airo-devel ,pixman
free-type-devel , libpango1.0-dev ,libxml2-dev , zlib  ,glib 等

另若编译airo-1.6.4  , |  airo 依赖 libpng ,libpng-devel , pixman ,fontconfig-devel可编译安装完成。


#./configure --prefix=/usr/local/rrdtool ;make;make install


 
三、mysql 及中文相关。
 
 1.mysql
 
mysql>create database cacti default character set utf8;
mysql> grant all on  cacti.* to  tqh@localhost   identified by  '123456';


2.中文相关

#tar zxvf ttf-arphic-ukai_0.1.20060928.orig.tar.gz

# cp ukai.ttf /usr/share/fonts/ukai.ttc
安装完成后注意在"设置"中更改下面两个必改项.
常规->RRDTool应用程序版本 改为1.2.x,默认为1.0.x.不改可能图像不能正常显示出来.
路径->RRDTool默认字体路径 改为上面安装的ukai.ttf的文件路径,如/usr/share/fonts/ukai.ttc


 
 
 
 
四、cacti安装 配置

#######################################
#
#         cacti  0.8.7g

######################################

#mv cacti-0.8.7g /var/www/html/cacti
#chown -R cacti.root cacti      (rra等目录以cacti用户权限写入)
#cd $cactipath/
#mysql -uroot -p123456 cacti<cacti.sql
# vi include/config.php   编辑mysql相关账号权限


访问web页面安装 You don't have permission to access /cacti on this server. 查日志为selinux报错。
#restorecon -R /var/www/html/

安装完成。admin/admin进入。

配置
setting->general->rrdtool  1.4.X
setting->path->RRDTool Default Font


采集数据 (su - cacti)
/usr/bin/php   /var/www/html/cacti/poller.php    (--force  默认5分钟采集,5分钟内无法再刷新采集。或页面编辑缩短,并打官方补丁)数据保存至rra目录。注意权限。

任务 (su - cacti)
crontab -e
*/5 * * * *  /usr/bin/php   /var/www/html/cacti/poller.php  > /dev/null 2>&1

 

完成

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

五.安装排错相关

cacti 通过snmpget获取数据,rrdtool绘制图形

获取snmp信息
# snmpwalk -v 2c -c public  192.168.0.230 if
IF-MIB::ifIndex.1 = INTEGER: 1
IF-MIB::ifIndex.2 = INTEGER: 2
IF-MIB::ifIndex.3 = INTEGER: 3
IF-MIB::ifIndex.4 = INTEGER: 4
IF-MIB::ifIndex.5 = INTEGER: 5
IF-MIB::ifIndex.6 = INTEGER: 6


rrd文件运行排错 (rrd命令画图,rra目录下采集到的数据)
#rrdtool fetch yourRRDfile.rrd AVERAGE  。 全nan则异常。

 

 
 六 插件
############################################################
#
# 插件(扩展功能)
#
#使之可以安装插件,未实装插件。http://cactiusers.org/downloads/
#############################################################

下载安装cacti-plugin-0.8.7g-PA-v2.8.tar.gz 
# mysql -uroot -p123456 cacti < pa.sql     (plugin management项)
# cp cacti-plugin-0.8.7g-PA-v2.8.diff  /var/www/html/cacti/
# cd /var/www/html/cacti/
# patch -p1 -N < cacti-plugin-0.8.7g-PA-v2.8.diff    (或者直接copy 解压包内的文件)


# vi /var/www/cacti/include/global.php  【***】
/* Default database settings*/
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "tqh";
$database_password = "123456";
$database_port = "3306";

 

cofig.php 或 global.php 

$config['url_path'] = '/cacti/';      【错误则 页面无法找到】

【cp 方式可能导致 安装的插件路径不对】

设定权限,admin权限有了新的扩展Plugin Management ,勾上。页面Configuration 多出插件管理项。


####################################
#
#相关插件
#安装插件 monitor setting thold 等。
######################################
monitor: 通过简单明了的图标提供服务器的运行状态    
settings:给不同的插件提供一些共用的信息,如邮件信息,dns信息。
thold:   提供设备异常预警

#tar xvf npc.XXX.tar.gz
#tar xvfz settings-XX.tar.gz
#tar xvf thold-XXX.tar.gz
#rm -f *.gz
#mv * /var/www/html/cacti/plugins/

chown ,restorecon 权限设定。
# mysql -uroot -p123456 cacti<monitor.sql   (thold 同 ,setting不需要导入sql,npc不需要导入但须页面设定)

左侧setting项设定thold 告警通知人
左侧Thresholds项设定阈值。或者直接浏览graph,点击编辑。

Plugin Management管理页面可以热启动/停止 。
安装了2个插件, cacti 0.8.7g 新版均无需在config.php 配置插件项 ,配置后反而无法管理。


***附录旧版cacti 插件管理<==================================
[Plugin Management],可以进行三个plugin的管理(Install | Unistall | Enable | Disable | Check)了。
【old plugin Arch 】类插件必须在配置文件里添加
#vi include/config.php
$plugins = array();
$plugins[] = 'thold';
$plugins[] = 'settings'; 
$plugins[] = 'npc';
monitor
比如setting 就是old类型。 
==========================================================>

 

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

**附录F1**rrdtool编译安装提示

ordering CD from http://tobi.oetiker.ch/wish .... just kidding ;-)

----------------------------------------------------------------
Config is DONE!

          With MMAP IO: yes
      Build rrd_getopt: no
       Static programs: no
          Perl Modules: perl_piped perl_shared
           Perl Binary: /usr/bin/perl
          Perl Version: 5.8.8
          Perl Options: PREFIX=/usr/local/rrdtool LIB=/usr/local/rrdtool/lib/perl/5.8.8
          Ruby Modules:
           Ruby Binary: no
          Ruby Options: sitedir=/usr/local/rrdtool/lib/ruby
    Build Lua Bindings: no
    Build Tcl Bindings: no
 Build Python Bindings: yes
          Build rrdcgi: yes
       Build librrd MT: yes
           Use gettext: yes
           With libDBI: no

             Libraries: -lxml2 -lcairo -lcairo -lcairo -lm  -lcairo -lpng12   -lglib-2.0   -lpangocairo-1.0 -lpango-1.0 -lcairo -lgobject-2.0 -lgmodule-2.0 -ldl -lglib-2.0 

Type 'make' to compile the software and use 'make install' to
install everything to: /usr/local/rrdtool.

       ... that wishlist is NO JOKE. If you find RRDtool useful
make me happy. Go to http://tobi.oetiker.ch/wish and
place an order.

                               -- Tobi Oetiker <tobi@oetiker.ch>
----------------------------------------------------------------