cacti监控安装


############################

配置yum源,安装rrdtool

   vi /etc/yum.repos.d/dag.repo

   [dag]

   name=Dag RPM Repository for Red Hat Enterprise Linux

   baseurl=http://apt.sw.be/redhat/el$releasever/en/$basearch/dag

   gpgcheck=1

   gpgkey=http://dag.wieers.com/rpm/packages/RPM-GPG-KEY.dag.txt

   enabled=1




一:yum安装lamp

   yum -y install httpd mysql-server php php-mysql mysql-devel rrdtool net-snmp* gd gd-devel freetype

##########################################

二:设置开机启动并启动服务,关闭防火墙 selinux

   chkconfig httpd on

   chkconfig mysqld on

   service httpd start

   service mysqld start

   service iptables stop

   vi /etc/sysconfig/selinux

   SELINUX=disabled

   SELINUXTYPE=targeted

   reboot                    重启系统使selinux生效

三:安装cacti

############################

   下载cacti

   wget http://www.cacti.net/downloads/cacti-0.8.8b.tar.gz          

   tar zxvf cacti-0.8.8b.tar.gz                              

   mv cacti-0.8.8b /var/www/html/

 #####赋予apache读取权限

   chown -R apache:apache /var/www/html/cacti-0.8.8b

 #####登录mysql                                            

   mysql -uroot

 #####创建cacti数据库                                                                                  

   create database cacti;

 #####建立cacti用户 密码cacti123

   insert into mysql.user(host,user,password) values ('localhost','cacti',password('cacti123'));

 #####重载mysql授权表

   flush privileges;

 #####把cacto授权给cacti数据库                                                                            

   grant all on cacti.* to cacti@'localhost' identified by 'cacti123';                          

   cd /var/www/html/cacti-0.8.8b

 #####将cacti数据库导入修改网站配置文件,使用正确连接数据库参数

   mysql -ucacti -pcacti123 cacti<cacti.sql                                                      

   vim include/config.php

      $database_type = "mysql";

      $database_default = "cacti";

      $database_hostname = "localhost";

      $database_username = "cacti";

      $database_password = "cacti123";

      $database_port = "3306";

 #####使用浏览器打开http://192.168.6.186/install/

 #####设置cacti数据采集计划任务,每5分钟执行一次php采集脚本,禁止输出

   crontab -e

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

   监控插件安装:

   常用插件安装

      最新版本cacti-0.8.7i-PIA-3.1 集成了plugin架构扩展,所以可以直接开启后就可以安装其他插件

      打开“Console”-----“User Management”---“admin”——“Realm Permissions”,选择以下后,单保存”save”

      1:Monitor安装(以图形方式显示设备状态)

         tar zxvf monitor-v1.3-1.tgz

         mv monitor /var/www/html/cacti/plugins/monitor

         cd /var/www/html/plugins/monitor/

         导入数据库

         mysql -ucacti –pcacti123 cacti&lt;monitor.sql  

         打开Cacti的web页面“Plugin Management”激活插件

      2:Setting安装(用于邮件报警)

         tar zxvf settings-v0.71-1.tgz

         mv settings /var/www/html/plugins

         打开Cacti的web页面“Plugin Management”激活插件

      3:Thold安装(用于设备异常预警、阀值报警)

         tar zxvf thold-v0.4.9-3.tgz

         mv thold /var/www/html/plugins/

         打开Cacti的web页面“Plugin Management”激活插件  


四:监控windows客户端

   第1步:要在被监控的Windows系统上安装SNMP组件,通过“添加/删除面板”中的“添加/删除组件”安装

       选择wmi snmp和简单网络协议

       安装完成后打开系统服务,双击snmp service服务 ,选择安全,添加public 只读 ,主机填写cacti服务器ip

       重启snmp service 服务

   二、登录cacti服务器,进行相关的配置

       添加一个图形目录树(Graph tree),默认只有一个名为"Default tree"的图形目录树

       选择 "Graph Trees" -> "Add" -> 然后填入一个名称

       选择 "Devices" -> "ADD"(右上角)->然后进行相关的设置

       选择 "Device" -> 点击"mypc" -> "Create Graphs fro this Host"(右上角),然后选择要被图示的监视项目,以及颜色选择

       把刚创建主机的图像,放入到一个图像目录树中(以便归类区分)

       选择 “Devices" -> "mypc"(打勾) -> "Choose an action"(右下角) -> "Place on a tree(Windows computer)"

       选择 "choose" -> "graphs" -> "windows computer",就可以看到图形数据


无法显示图像,全局显示nan,执行以下命令

   vi /etc/snmp/snmpd.conf

     view    systemview    included   .1.3.6.1.2.1.1

     view    systemview    included   .1.3.6.1.2.1.25.1.1

   把如上两行中其中一行改为

   view    all      include    .1     80

   #############################################

   access  notConfigGroup ""      any       noauth    exact  systemview none none

   把systemview改为all

   ###############################################

   手动运行php采集脚本

   /usr/bin/php  /var/www/html/cacti/poller.php --force

   赋予执行权限  

   chmod a+x /var/www/html/cacti/cmd.php



cacti优化

         1:进程调整

            对于进程和线程的调整有利于缩短采集时间,可以进行大量的采集。在CU论坛上看有人说cacti能够同时采集1k服务,这样的性能没有测试过,但是有人测试过同时采集200台服务器的,占用的内容只有几百兆,cpu的利用率也很低,说明一台的普通的机器排除网络链路延时采集的性能是相当强悍的

           (最大并发轮询器进程),修改该值

            Settings -> Poller -> "Maximum Concurrent Poller Processes"

           (每进程最大线程数),修改该值

            Settings -> Poller -> "Maximum Threads per Process"

           (PHP脚本服务程序数),修改该值

            Settings -> Poller -> "Number of PHP Script Servers"

            通过修改这三个参数,可以提高一部分的性能

         2:增加php 的内存使用的上限值

            vi /etc/php.ini

           (预设是128MB,根据内存的使用情况,可以改大一点)

            memory_limit = 256M

         3:定期 optimize cacti 数据库

            cacti 的 poller_output 会不明原因的长大,大到数据越写越慢,直到无法更新。每隔一段时间手动 “Truncate poller_output table” 后,就会继续正常运作;所以我们可以利用crontab定期清除数据

            crontab -e

            0 0 * * 0  root  /usr/local/mysql/bin/mysql --user=cacti --password=2010 cacti -e ‘truncate table poller_output;’

         4:修改mysql的最大连接数

            一般默认安装的时候没有调整最大连接数的话,当需要并发量的时候可以出图就会断断续续的

            mysql> set GLOBAL max_connections=200000;

            或者修改my.cnf配置文件

            vi /etc/my.cfg

            添加

            max_connections = 200000;

        5:让Cacti使用Spine插件,并进行相关设置

           访问:http://192.168.6.186/cacti

           Settings -> Paths -> "Spine Poller File Path" -> spine程序的位置

           Settings -> Poller -> "Poller Type" -> spine

           完成这些设置后,Cacti将会每5分钟执行一次Spine,来代替原来的cmd.php

           ###############################

           下载安装spine插件

           wget  http://www.cacti.net/downloads/spine/cacti-spine-0.8.7g.tar.gz

           tar xvzf cacti-spine-0.8.7g.tar.gz

           cd cacti-spine-0.8.7g

           ./configure

           make

           make install

           默认安装在/usr/local/spine/目录下

           编辑spine.conf文件,设置Cacti数据的连接信息

           cd /usr/local/spine/etc/

           DB_Host            localhost        # 主机地址

           DB_Database        cacti            # 数据库

           DB_User            cactiuser        # 数据库用户

           DB_Pass            cactiuser        # 数据库连接密码

           DB_Port            3306             # 数据库连接端口

           DB_PreG            0                # 全新安装填0,如果是兼容安装填1