环境:centos5.1
1.基本安装
cacti
是运作在apache+php+mysql+net-snmp工具集+rrdtool这样的一个工作环境之下,所以我们先要做一个基本的工作的环境
记的安装前先安装rpm的扩展包,安装方法见我的另外一个文章"rpm的高级管理"
#yum -y install mysql mysql-server php-mysql httpd php
上面完成一个php,http,mysql的环境,接下来安装要用到的包
#yum -y install php-pdo lm_sensors net-snmp php-snmp net-snmp-utils perl-Net-Daemon perl-PlRPC perl-DBI rrdtool perl-rrdtool perl-DBD-MySQL
安装完,启动相关的程式,和设置开机启动
#chkconfig mysqld on
#chkconfig httpd on
#server mysqld start
 
2.安装rrdtool
下载rrdtool 1.2.24.tar.gz
注意,在下载过程中,不能下载的均可用迅雷先下载后再上传到linux服务器中。
 
设置.bash_profile
BUILD_DIR=/tmp/rrdbuild
INSTALL_DIR=/usr/local/rrdtool-1.2.24
如下:
# vi ~/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
BASH_ENV=$HOME/.bashrc
USERNAME="root"
BUILD_DIR=/tmp/rrdbuild
INSTALL_DIR=/usr/local/rrdtool-1.2.24
export USERNAME BASH_ENV PATH BUILD_DIR INSTALL_DIR
保存退出,执行
# source  ~/.bash_profile
# mkdir -p $BUILD_DIR
 
 
 
 
(1) 安装libart_lgpl-2.3.17
获取方法:
wget [url]http://oss.oetiker.ch/rrdtool/pub/libs/libart_lgpl-[/url]2.3.17.tar.gz
安装方法:
# tar xzvf libart_lgpl-2.3.17.tar.gz
# cd libart_lgpl-2.3.17
# ./configure --disable-shared --prefix=$BUILD_DIR/lb
#make
#make install
(2) 安装libpng-1.2.18
获取方法:
wget [url]http://oss.oetiker.ch/rrdtool/pub/libs/libpng-[/url]1.2.18.tar.gz
安装方法:
#tar zxvf libpng-1.2.18.tar.gz
# cd libpng-1.2.18
# ./configure --disable-shared --prefix=$BUILD_DIR/lb
#make
#make install
               
(3) 安装freetype-2.1.10
获取方法:
wget [url]http://oss.oetiker.ch/rrdtool/pub/libs/freetype-[/url]2.3.5.tar.gz
安装方法:
# tar xzvf freetype-2.3.5.tar.gz
# cd freetype-2.3.5
# ./configure --disable-shared --prefix=$BUILD_DIR/lb
#make
#make install
               
(4) 安装zlib-1.2.3
获取方法:
wget [url]http://oss.oetiker.ch/rrdtool/pub/libs/zlib-[/url]1.2.3.tar.gz
安装方法:
# tar xzvf zlib-1.2.3.tar.gz
# cd zlib-1.2.3
#./configure --prefix=$BUILD_DIR/lb
#make
#make install
       
(5) 执行如下操作
# ranlib $BUILD_DIR/lb/lib/*.a
 
 
(7) 再次修改.bash_profile文件,加入如下:
IR=-I$BUILD_DIR/lb/include
CPPFLAGS="$IR $IR/libart-2.0 $IR/freetype2 $IR/libpng"
LDFLAGS="-L$BUILD_DIR/lb/lib"
CFLAGS=-O3
export CPPFLAGS LDFLAGS CFLAGS
 
加入后的.bash_profile文件如下
 
# vi ~/.bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
 
# User specific environment and startup programs
BASH_ENV=$HOME/.bashrc
USERNAME="root"
BUILD_DIR=/tmp/rrdbuild
INSTALL_DIR=/usr/local/rrdtool-1.2.24
PATH=$PATH:$HOME/bin: $INSTALL_DIR/bin
IR=-I$BUILD_DIR/lb/include
CPPFLAGS="$IR $IR/libart-2.0 $IR/freetype2 $IR/libpng"
LDFLAGS="-L$BUILD_DIR/lb/lib"
CFLAGS=-O3
export USERNAME BASH_ENV PATH BUILD_DIR INSTALL_DIR IR CPPFLAGS LDFLAGS CFLAGS
执行
# source  .bash_profile
 
 
以上各步完成后就可以安装rrdtool-1.2.24
获取方法:
wget [url]http://oss.oetiker.ch/rrdtool/pub/rrdtool-[/url]1.2.24.tar.gz
安装方法:
# tar xzvf rrdtool-1.2.24.tar.gz
# cd rrdtool-1.2.24
# ./configure --prefix=$INSTALL_DIR --disable-python --disable-tcl --disable-rrdcgi
# make clean
# make
# make install
# cp /usr/local/rrdtool-1.2.24/bin* /usr/local/bin/
2.数据库设置
准备数据库,和设置权限,安装cacti
#mysql -uroot -p
mysql>create database cacti default character set utf8;
mysql>GRANT SELECT, INSERT, UPDATE, DELETE, INDEX, ALTER, CREATE, LOCK TABLES, CREATE TEMPORARY TABLES, DROP, REFERENCES ON cacti.* TO cacti@localhost IDENTIFIED BY 'passwd';
mysql>flush privileges;
mysql> \q
3.下载安装
下载中文的cacti,解压到/var/www/cacti.后进入cacti的目录.导入cacti的数据结构
下载地址: cacti-0.8.7a-cn-utf8.tar.gz
# cd /var/www/cacti
# mysql -u cacti -p cacti < cacti.sql
修改配置文件
# vim /var/www/cacti/include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cacti";
$database_password = "passwd";
$database_port = "3306";
添加cacti用户
$useradd cacti -d /var/www/cacti -s /bin/false
$chown -R cacti /var/www/cacti/rra /var/www/cacti/log
这个上面可能添加不行试试:
#chown -hR cacti /var/www/cacti/rra /var/www/cacti/log
 
 
4. 配置httpd服务器的配置文件
# vim /etc/httpd/conf.d/cacti.conf
Alias /cacti /var/www/cacti
<Directory /var/www/cacti>
DirectoryIndex index.php
AllowOverride all
order deny,allow
deny from all
allow from all
AddType application/x-httpd-php .php
php_flag magic_quotes_gpc on
php_flag track_vars on
</Directory>
重起httpd的服务,让上面的修改生效
# /etc/init.d/httpd restart

5.
测试安装是否正常
打开下面的url.
[url]http://server.ip.or.name/cacti[/url]
打开网站,点next.选择new install,使用一路回车法.最后完成

最后的用户名为: admin 密码为: admin
6.收尾
让系统每5分钟收集,需要
crontab -e
*/5 * * * * cacti php /var/www/cacti/poller.php &>/dev/null
也可手工跑一次:/var/www/cacti/poller.php
 
7。字体在图形中显示不正常的解决方法
#tar zxvf ttf-arphic-ukai_0.1.20060928.orig.tar.gz
# cd ttf-arphic-ukai-0.1.20060928/
# cp ukai.ttf /usr/share/fonts/ukai.ttf
安装完成后注意在"设置"中更改下面两个必改项
.
常规->RRDTool应用程序版本 改为1.2.x,默认为1.0.x.不改可能图像不能正常显示出来
.
路径->RRDTool默认字体路径 改为上面安装的ukai.ttf的文件路径,/usr/share/fonts/ukai.ttf
 
poller.php文件最顶 一行写入
#!/usr/bin/php -q
然后保存,退出,即可搞定!
需要配置snmp
root@Bleach usr]# vi /etc/snmp/snmpd.conf
更改 1
com2sec notConfigUser default public
改为:
com2sec notConfigUser 127.0.0.1 public
2
access notConfigGroup "" any noauth exact systemview none none
改为:
access notConfigGroup "" any noauth exact all none none
3
#view all included .1 80
将前面的 # 注释 去掉。

保存退出 :wq
php /var/www/cacti/poller.php