Cacti是一套使用rrdtool把snmp采集来的数据绘画成图形的工具,它提供了非常强大的数据监控功能。在此我们对它进行简单的安装配置


主机环境 rhel6.5 selinux and iptables disable


实验主机

     

172.25.9.3  server3.example.com


172.25.9.2  server2.example.com


Cacti的安装:


在服务端server3.example.com中:


安装所需的软件包:    

    yum install -y php php-mysql mysql-server  rrdtool php-gd php-xml httpd net-snmp-utils  net-snmp

    rpm -ivh php-snmp-5.3.3-26.el6.x86_64.rpm


将Cacti的tar包解压到apache的发布目录

    

    tar zxf cacti-0.8.8h.tar.gz -C /var/www/html/

    cd /var/www/html/

    mv cacti-0.8.8h/ cacti

更改php.ini的时区:

wKiom1dddhCzB385AABlzfaueBM587.png-wh_50


启动mysql服务并建立cacti库和维护此库的cacti用户

wKioL1ddd2ritwmSAAEG9BUzgeA972.png-wh_50


    /etc/init.d/mysqld start

测试cacti这个数据用户


    mysql -ucacti -predhat cacti

成功后:

    

    cd /var/www/html/cacti


将此目录下的cacti数据导入cacti库


    mysql -ucacti -predhat cacti < cacti.sql

 

更改cacti.php中的数据库信息


    vim /var/www/html/cacti/include/config.php


wKiom1dddnuCFKDxAADGT8HgksU008.png-wh_50


创建用户cacti指定uid为1000使得/var/www/html/cacti/目录下的文件所有组和所有人都是cacti


    useradd -u 1000 cacti


切换到cacti用户创建采集信息的计划任务

    

    su - cacti

    crontab -e

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


启动apache:

/etc/init.d/httpd start

登陆网页测试:

wKioL1ddd6Tgt7a2AACeXMqHoNk735.png-wh_50


cacti的登陆用户为admin密码也是admin首次登陆后会要求改密码


wKiom1dddrLztPU_AACR0KAx8uU919.png-wh_50


在graphs里能看到这样的图表示成功:


wKiom1dddsKxpyCUAAEu0zhllRM858.png-wh_50


在Cacti客户端server2.example.com中


    yum inatll net-snmp net-snmp-utils

启动snmp服务


    /etc/init.d/snmpd start

更改snmp的配置文件


    vim /etc/snmp/snmpd.conf

 

注释掉:

    

      com2sec notConfigUser  default  public

添加:

    

      com2sec local localhost  public

      com2sec mynetwork 172.254.9.0/24 public


注释掉:

    

      group   notConfigGroup v1 notConfigUser

      group   notConfigGroup v2cnotConfigUser


添加:


      group MyRWGroup v1 local

      group MyRWGroup v2clocal

      group MyRWGroup usmlocal

      group MyROGroup v1 mynetwork

      group MyROGroup v2cmynetwork

      group MyROGroup usmmynetwork



更改`view systemview  included  .1.3.6.1.2.1.1`为


    view  systemview  included  .1.3.6.1.2.1

注释掉:


    access  notConfigGroup "" any  noauthexact  systemview none none


添加:


    access MyROGroup ""  any   noauthexact  allnone   none

    access MyRWGroup ""  any   noauthexact  allallnone


更改:


       syslocation Unknown (edit /etc/snmp/snmpd.conf)

       syscontact Root (configure /etc/snmp/snmp.local.conf)


为:


    syslocation rhel6.5

    syscontact  <28383217@westos.org>


取消 `disk /10000` 的注释


重起snmp服务并测试


    /etc/init.d/snmpd restart


wKiom1dddt_iIQ5aAABUgHeN7jk607.png-wh_50

wKioL1ddd-_TGAMAAACXfTdzzSw076.png-wh_50


在server3.example.com中再次测试


wKioL1ddeEbTsiRNAABn8dC***s673.png-wh_50

wKioL1ddeFujbzXNAACS5iVnIBw085.png-wh_50



将配置好的snmp配置复制到server3主机中

    

    scp /etc/snmp/snmpd.conf  172.25.9.3:/etc/snmp/


启动server3主机的snmp服务


在cacti网页Devices中添加server2主机并创建图形


wKiom1ddd5Oj8Q46AAEkCVUNrhE488.png-wh_50

wKioL1ddeQGzxP2LAAHKZb-Y6hs177.png-wh_50


选择要创建的图形:


wKioL1ddeRDhhEwiAAGg91qm2HU698.png-wh_50


在graph trees的Default tree中添加server2


wKiom1ddeBThl0jXAADagS9K4xw284.png-wh_50

wKiom1ddeMSgy-ZKAAFEM0XCbSA673.png-wh_50


之后就能看到server2主机的数据图了

wKioL1ddeeTQyMzLAAFPKBMgBTA718.png-wh_50


Cacti支持多线程的配置


在Cacti服务端server3主机中


解压cacti的插件包


    tar zxf cacti-spine-0.8.8h.tar.gz

安装所需的软件包

    

    yum install mysql-devel net-snmp-devel dos2unix autoconf automake binutils gcc cpp libtool


编译安装插件:


    cd cacti-spine-0.8.8h

    sh bootstrap

    ./configure

    make 

    make install


    scp /usr/local/spine/etc/spine.conf.dist /etc/spine.conf

更改配置文件中的数据库信息

    vim /etc/spine.conf

wKiom1ddePiTAmDXAABADqfkggs121.png-wh_50

在网页中配置

wKioL1ddeh3AuBl7AAIsO6dyGY4785.png-wh_50

wKiom1ddeR6TlHx9AAIyrqF8L68399.png-wh_50

Cacti的模块安装


在官网下载所需的模块如monitor-v1.3-1.tgz


将tar包解压到cacti的插件目录

    

    tar zxf monitor-v1.3-1.tgz -C /var/www/html/cacti/plugins

在网页中配置:打开monitor

wKioL1ddekvhJy-bAAFRMzLyLbg877.png-wh_50

wKiom1ddeTyg36G4AABhRv_mwVQ927.png-wh_50

这样Cacti的模块就安装成功了。