cacti中文是运行在apache+php+mysql+net-snmp+rrdtool的环境中的,所以先搭建基础的工作环境。

  yum源就不再这里多做说明了。

  1.首先先安装http+mysql+php及后边软件编译需要的软件:

    #yum -y install httpd httpd-devel mysql mysql-devel mysql-server php php-xml php-cli php-pdo php-mbstring php-mcrypt php-gd php-common php-devel php-mysql

   #yum -y install lm_sensors php-snmp perl-DBI perl-DBD-MySQL

  #yum -y install net-snmp net-snmp-devel net-snmp-perl net-snmp-utils

  #yum -y install libart_lgpl libart_lgpl-devel

  #yum -y install glib zlib freetype pango libpng cairo*

  #yum -y install gtk* libxml2*

  #yum -y install wget

  2.安装完成后启动相关进程和设置开机启动

    #chkconfig mysqld on

    #chkconfig httpd on

    #chkconfig snmpd on

    #service mysqld start

    #service httpd start

    #service snmpd start

 3.测试php环境是否安装好了:

  #cd /var/www/html/

  #touch index.php

  写入:

 <?php

phpinfo();

?>

保存退出,打开浏览器查看:

看到的php信息说明安装成功了。

  4.安装rrdtool包

    #tar -zxvf rrdtool-1.4.5.tar.gz

   #./configure --prefix=/usr/local/rrdtool

   #make && make install

   #ln -s /usr/local/rrdtool/bin/* /usr/bin/         一定要做这一步,否则安装cacti说找不到路径

  5.创建mysql数据库:

   # mysql -u root -p
   Enter password:   // 初始密码为空

   mysql> create database cacti default character set utf8;   //gb2312环境为 set  gb2312

   mysql> set NAMES 'utf8';   //gb2312环境为 gb2312

   mysql> grant all privileges on cacti.* to cactiuser@localhost identified by '123456';

   mysql> flush privileges; 

   mysql> \q

   6.安装中文版cacti:

    下载中文的 cacti,解压到/var/www/html/cacti 后进入 cacti 的目录.导入 cacti 的数据结构
    # wget http://blogimg.chinaunix.net/blog/upfile2/090815172648.gz
    下载完成后把下载的文件重命名为cacti-0.8.7e-cn-utf8.tar.gz
    # tar -zxvf cacti-0.8.7e-cn-utf8.tar.gz
    # mv cacti-0.8.7e-cn-utf8 /var/www/html/cacti 
    进入数据库导入cacti数据结构
    # mysql -u root -p
    Enter password: 
    mysql> use cacti;
    mysql> source /var/www/html/cacti/cacti.sql;
    mysql> \q
    看着输入这个就成功了:

  7.修改配置文件  创建用户:

    修改配置文件

# vim /var/www/cacti/include/config.php
$database_type = "mysql";
$database_default = "cacti";             cacti的数据库     和步骤5一样
$database_hostname = "localhost";
$database_username = "cactiuser";        cacti使用数据库的用户名  和步骤5一样
$database_password = "123456";           密码    和步骤5一样
$database_port = "3306";

添加cacti用户
# useradd cacti -d /var/www/html/cacti -s /bin/false
# chown -R cacti.cacti /var/www/html/cacti/rra /var/www/html/cacti/log
  8.修改httpd.conf的配置文件

   # vi /etc/httpd/conf/httpd.conf

在#ServerName www.example.com:80 下增加一行 ServerName 192.168.0.188(实际IP地址):80

找到 AddType application/x-gzip .gz .tgz 在其下添加如下内容

AddType application/x-httpd-php. php

AddType application/x-httpd-php-source .phps

重起 httpd 的服务,让上面的修改生效

# service httpd restart
 

  9.安装cacti:

   浏览器里输入:192.168.0.188/cacti

    下一步下一步一直到:

  检查没有错误,点击完成。

  

    10.设置让系统美5分钟收集一下信息:

     # chmod -R 755 /var/www/html/cacti/poller.php

    # crontab -e -u cacti

    最后添加下一行

    */5 * * * * /usr/bin/php /var/www/html/cacti/poller.php > /dev/null 2>&1

    # service crond restart

       如果系统是最小安装,可能没有crontab组件,安装一个即可安装crontab:
    # yum install -y vixie-cron

    # chkconfig crond on

     你也可以手动跑一下:

    #/var/www/html/cacti/poller.php

    可能出现这样的错误:

     解决方法:在poller.php的最前面,也就是第一行加入#!/usr/bin/php -q

    再次执行就可以了。

   11.安装spine轮询引擎

    spine是一个基于C语言的,非常快速的轮询引擎。它是默认的cmd.php轮询的可选替代。当cacti监控的主机达到几十个的时候,这种采集数据延时情况就越发地显现出来

   # wget http://www.cacti.net/downloads/spine/cacti-spine-0.8.7e.tar.gz
   # tar –zxvf cacti-spine-0.8.7e.tar.gz
   # cd cacti-spine-0.8.7e
   # ./configure

   可能会报这个错误

 

  解决方法:

 #yum -y install libtool
 #yum -y install libtool-ltdl libtool-ltdl-devel

 再重试:./configure 
 然后: 

 #make && make install

修改 spine.conf

# vi /usr/local/spine/etc/spine.conf

DB_Host localhost
DB_Database cacti
DB_User cactiuser       访问cacti数据库的用户名
DB_Pass 123456          访问cacti数据库的密码
DB_Port 3306
登入cacti修改轮询引擎:

先修改spine的路径:

 

保存。

 选择spine

保存就可以了。