1. 基本环境 RHEL-5.2 + MySql-5.0 + Apache-2.2 + PHP-5.2 + net-snmp-5.4 + rrdtool-1.2.30 (MySql是用系统自带的)
所需包如下:
cacti-0.8.7b-cn-utf8.tar.gz http://blogimg.chinaunix.net/blog/upfile2/071218223453.gz
httpd-2.2.11.tar.gz
php-5.2.9.tar.gz
net-snmp-5.4.2.1.tar.gz
rrdtool-1.2.30-1.el5.wrl.i386.rpm
rrdtool-devel-1.2.30-1.el5.wrl.i386.rpm
rrdtool-perl-1.2.30-1.el5.wrl.i386.rpm
mysql-devel-5.0.45-7.el5.i386.rpm
2.安装软件环境
安装rpm包
[root@localhost src] rpm -ivh mysql-devel-5.0.45-7.el5.i386.rpm
[root@localhost src] rpm -ivh rrdtool-1.2.30-1.el5.wrl.i386.rpm
[root@localhost src] rpm -ivh rrdtool-devel-1.2.30-1.el5.wrl.i386.rpm
[root@localhost src] rpm -ivh rrdtool-perl-1.2.30-1.el5.wrl.i386.rpm
安装net-snmp源代码包
[root@localhost net-snmp-5.4.2.1] ./configure --prefix=/usr/local/net-snmp5.4
安装apache源代码包
[root@localhost httpd-2.2.11] ./configure --prefix=/usr/local/apache2 --enable-file-cache --enable-cache --enable-disk-cache --enable-mem-cache --enable-mime-magic --enable-expires --enable-headers --enable-http --enable-cgid --enable-rewrite --enable-so
安装php源代码包
[root@localhost php-5.2.9] ./configure --prefix=/usr/local/php5 --with-apxs2=/usr/local/apache2/bin/apxs --enable-force-chi-redirect --enable-fastcgi --enable-magic-quotes --with-bz2 --enable-ftp --with-gd --enable-gd-native-ttf --enable-gd-jis-conv --enable-mbstring --with-mysql --with-jpeg --with-zlib --with-pdo-mysql --with-snmp=/usr/local/net-snmp5.4 --with-openssl-dir --enable-ucd-snmp-hack --enable-sockets
解压cacti到apache目录下,并修改好数据库连接参数
[root@localhost src] tar zxvf cacti-0.8.7b-cn-utf8.tar.gz
[root@localhost src] mv cacti-0.8.7b-cn-utf8 /usr/local/apache2/htdocs/cacti
[root@localhost src] vi /usr/local/apache2/htdocs/cacti/include/config.php
$database_type = "mysql";
$database_default = "cacti";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactipassword";
$database_port = "3306";
启动MySql, 建立数据库, 创建用户, 并导入数据
[root@localhost ~] mysqladmin -u root password '新密码' //第一次启动MySql需要这一步更改密码
[root@localhost ~] mysql -u root -p //登陆MySql
mysql>crate database cacti default character set utf8; //创建数据库cacti
mysql>GRANT ALL PRIVILEGES ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'cactipassword' WITH GRANT OPTION; //创建用户, 并指定对cacti库的所有表拥有超级权限
mysql>exit;
[root@localhost ~] mysql -u root -p cacti < /usr/local/apache2/htdocs/cacti/cacti.sql //将数据以及数据结构导入到cacti库
配置cacti
http://hostname/cacti/install 进入安装 (默认账户密码都为admin, 第一次安装后会提示强制更改密码)
snmpwalk路径 /usr/local/net-snmp5.4/bin/snmpwalk
snmpget路径 /usr/local/net-snmp5.4/bin/snmpget
snmpbulkwalk路径 /usr/local/net-snmp5.4/bin/snmpbulkwalk
snmpgetnext路径 /usr/local/net-snmp5.4/bin/snmpgetnext
RRDTool路径 /usr/bin/rrdtool
RRDTool默认字体路径 /usr/share/fonts/chinese/TrueType/fzxiaosong.ttf //此字体为"方正小标宋简体", 自己上网下载放到这个目录就行了
PHP路径 /usr/local/php5/bin/php
Cacti日志文件路径 /usr/local/apache2/htdocs/cacti/log/cacti.log
让 /usr/local/apache2/htdocs/cacti/rra 和 /usr/local/apache2/htdocs/cacti/log 拥有写的权限, 我比较懒,直接:
[root@localhost ~] chmod -R 777 /usr/local/apache2/htdocs/cacti/rra
[root@localhost ~] chmod -R 777 /usr/local/apache2/htdocs/cacti/log
制定任务,每分钟执行一次
[root@localhost ~] crontab -e
*/1 * * * * /usr/local/php5/bin/php /usr/local/apache2/htdocs/cacti/poller.php &>/dev/null
http://hostname/cacti 进入
进入设置,
将 "轮询间隔" 和 "Cron间隔" 都设为 "每分钟"
将 "SNMP应用程序版本" 设为 "NET-SNMP5.X"
将 "RRDTool应用程序版本" 设为 "RRDTool 1.2.X"
最后将Apache和MySql设为开机启动,方法很多自己选择.
OK搞定!!