一.cacti介绍:

 Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。Cacti通过 snmp协议来获取数据,使用 RRDtool绘画图形,从而让用户完全可以不需要了解RRDtool复杂的参数。它提供了非常强大的数据和用户管理功能,可以指定每一个用户能查看树状结构、host以及任何一张图,还可以与LDAP结合进行用户验证,同时也能自己增加模板,界面十分友好。Cacti 的发展是让 RRDTool 使用者更方便使用该软件,除了基本的 Snmp 流量跟系统资讯监控外,Cacti 也可外挂 Scripts 及加上 Templates 来作出各式各样的监控图。


二.安装rrdtool和snmp:

  cacti是一个图形分析工具,其本身不具有获取主机信息和绘图的能力,所以需要依赖于rrdtool和snmp来进行绘图和数据的获取。

[root@localhost ~]# yum install -y rrdtool net-snmp net-snmp-utils

  注:rrdtool是绘图工具,net-snmp是snmp的服务程序,net-snmp-utils是snmp的状态获取工具。因此cacti端安装net-snmp-utils和rrdtool即可(除非要监控本机),而客户端则只需要net-snmp这个包。


三.安装配置LAMP环境:

  cacti是一个图形分析工具,其是基于LAMP构建的,要想使用Cacti,就必须提供Cacti的运行环境。

  1.安装LAMP:

[root@localhost ~]# yum install -y httpd mysql mysql-server php php-mysql

  2.配置httpd虚拟主机并启动:

[root@localhost ~]# vim /etc/httpd/conf/httpd.conf 
        <VirtualHost *:80>
            ServerName www.cacti.com
            DocumentRoot /cacti
            <Directory "cacti">
                Options None
                AllowOverride None
                Order allow,deny
                allow from all
            </Directory>
            ErrorLog logs/cacti-error_log
            CustomLog logs/cacti-access_log common
        </VirtualHost>
[root@localhost ~]# service httpd start
Starting httpd:                                            [  OK  ]

  3.启动MySQL:

[root@localhost ~]# service mysqld start
Starting mysqld:                                           [  OK  ]
[root@localhost ~]#


四.安装Cacti并进行基本配置:

  1.下载Cacti并解压设置权限:

[root@localhost ~]# wget http://www.cacti.net/downloads/cacti-0.8.8g.tar.gz
[root@localhost ~]# tar xf cacti-0.8.8g.tar.gz -C /
[root@localhost ~]# mv /cacti-0.8.8g /cacti
[root@localhost  ~]#  chown -R root.root /cacti/

  2.为Cacti创建MySQL用户、库、表:

[root@localhost ~]# mysql -e "CREATE DATABASE cactidb;
[root@localhost ~]# mysql -e "GRANT ALL PRIVILEGES ON cactidb.* TO 'cactiadmin'@'localhost' IDENTIFILED BY 'cactiadmin';"
[root@localhost ~]# mysql cactidb </cacti/cacti.sql

  cacti.sql是cacti自带的,在其解压后的目录中。


  3.配置Cacti的配置文件(./cacti/include/config.php):

[root@localhost cacti]# vim /cacti/include/config.php
        $database_type = "mysql";  #数据库类型为mysql
        $database_default = "cactidb";  #cacti的数据库是cactidb
        $database_hostname = "localhost";  #连接的主机
        $database_username = "cactiadmin";  #连接的用户
        $database_password = "cactiadmin";  #连接的密码
        $database_port = "3306";  #连接的端口
        $database_ssl = false;  #不启用ssl
        
        $url_path = "/";  #设置cacti的访问URL路径是/,默认是/cacti


  4.为cacti添加用户(用于cacti执行脚本、记录日志、创建rrd文件等相关功能):

[root@localhost cacti]# useradd cacti -s /sbin/nologin

  5.授权cacti的rra、log目录属主、属组为cacti用户:

[root@localhost ~]# chown -R cacti.cacti /cacti/{log,rra}

  6.配置cacti程序的计划任务(cacti使用poller.php这个程序来运行用户定义的状态获取脚本,为了使得poller.php程序能够按时执行,需要定义crontab),每5分钟执行一次

[root@localhost ~]# echo "*/5 * * * * /usr/bin/php /cacti/poller.php &>/dev/null" >/var/spool/cron/cacti


五.进入网页完成cacti安装:

  1.安装提示及协议(Next即可):

wKiom1cVo-7A_x-IAAC51np3rq8542.png


  2.选择安装方式(这里是全新安装,Next):

wKioL1cVpK2RFs0RAAB09UaH9tg201.png


  3.选择rrdtool和snmp相关的配置(默认的一般就可以,Finish):

wKioL1cVpK7jGPSZAAF4sX7PBEA003.png


  4.安装完成登陆(用户名:admin,密码:admin):

wKiom1cVo_DAiLFLAADuUMzNkJk695.png


  5.修改旧密码(自己写):

wKiom1cVo_DBLAWsAAD6EyJVnEw526.png


  6.改密后出现该页面证明安装成功:

wKioL1cVpK_z7M2JAAEYeRu8RpQ884.png