225025 发表于 2019-1-10 06:33:55

Cacti 开源监控软件安装、配置

  Cacti 是一套基于PHP 、MySQL 、SNMP 及 RRDTool 开发的开源监测图形分析工具。
  Cacti 是用 php 语言实现的一个监控软件,它的主要功能是用 SNMP 服务获取数据,然后用 RRDTool 储存和更新数据,当用户需要查看数据的时候用 RRDTool 生成图表呈现给用户。因此,SNMP 和 RRDTool 是 Cacti 的关键。SNMP 关系着数据的收集,RRDTool 关系着数据存储和图表的生成。
  1、底层环境搭建( 这里使用 LNMP ,安装略 )
  2、安装前的调整
  ## 关注系统时间是否正确,这步尤为重要,如系统时间不对可能导致 Cacti 出图延迟
  ## 可以使用命令来实现 ntpdate us.pool.ntp.org | hwclock -w
  ## 还要检查 PHP 时区配置是否正确,尤为重要
  3、安装 RRDTool 、SNMP
  # yum -y install rrdtool-devel net-snmp net-snmp-utils
  # vim /etc/snmp/snmpd.conf## 编辑配置文件
  com2sec notConfigUser192.168.221.129       public
  ## 大致在 41 行的位置,将原 defaults 改为本机 IP ,public 为共同体名,可以自定义
  accessnotConfigGroup “”      any       noauth    exactall none none
  ## 大致在 62 行的位置,将原来的 systemview 改为 all
  view all    included.1                               80
  ## 大致在 85 行的位置,取消注释
  # service snmpd start   ## 启动 SNMPD 服务
  # chkconfig –add snmpd
  # chkconfig –level 35 snmpd on
  ## 将其加入开机启动
  # netstat -anpt | grep snmpd
  tcp      0      0 127.0.0.1:199               0.0.0.0:*                   LISTEN      1558/snmpd
  ## 验证是否成功启动
  4、安装 Cacti
  下载地址:
  http://www.cacti.net/downloads/cacti-0.8.8c.tar.gz
  # tar zxf cacti-0.8.8c.tar.gz -C /usr/local/nginx/html/
  # cd /usr/local/nginx/html/
  # mv cacti-0.8.8c cacti
  # useradd cacti##创建 cacti 用户,用来生成图像文件,不是必须的
  # chown -R nginx.nginx cacti
  # chown -R cacti.cacti cacti/rra cacti/log
  # service mysqld start
  # chkconfig –add mysqld
  # chkconfig –level 35 mysqld on
  ## 启动 Mysql ,加入开机启动
  # mysql -u root -p123456
  mysql> create database cactidb;

  mysql> grant all on cactidb.* to cactiuser@localhost>  ## 创建 cactidb 库,添加授权用户 cactiuser ,登录密码为 cactipasswd
  mysql> use cactidb;
  mysql> source /usr/local/nginx/html/cacti/cacti.sql
  ## 导入数据库
  # vim /usr/local/nginx/html/cacti/include/config.php
  $database_type = “mysql”;
  $database_default = “cactidb”;
  $database_hostname = “localhost”;
  $database_username = “cactiuser”;
  $database_password = “cactipasswd”;
  $database_port = “3306”;
  $database_ssl = false;
  ## 添加数据库连接用户、密码等
  # /usr/local/nginx/sbin/nginx## 启动 Nginx
  # service php-fpm start## 启动 Php-fpm
  # chkconfig –add php-fpm
  # chkconfig –level 35 php-fpm on
  ## Php-fpm 加入开机启动
  # netstat -anpt | grep -P ’80|9000′
  tcp      0      0 0.0.0.0:80                  0.0.0.0:*                   LISTEN      1946/nginx
  tcp      0      0 127.0.0.1:9000            0.0.0.0:*                   LISTEN      1966/php-fpm
  ## 启动成功
  ## 防火墙开启 80 端口对外允许访问,允许 127.0.0.1 访问所有
  5、浏览器安装 Cacti
  > http://192.168.221.129/cacti
  > 点击 Next
  > 选择 New Install , 点击 Next
  > 这里出问题最多的就是 PHP 路径,将 /usr/bin/php 改为 /usr/local/php/bin/php ,点击 Finish
  > 成功出现登录框,默认用户 admin 、密码 admin
  > 这时会强制修改密码,输入新的密码即可
  > OK ,这时已经成功登录
  6、开启本机监控
  > 点击左侧 Management — Devices
  > 这时可以看到默认的 Localhost ,Status 为 Unknown ,Hostname 为 127.0.0.1
  > 点击 Localhost ,进入配置页面
  > SNMP Community 区域
  Hostname — 默认为 127.0.0.1 修改为本机 IP 192.168.221.129
  > SNMP Options 区域
  SNMP Version — 选择版本 Version 1
  SNMP Community 共同体名,默认为 public ,修改为自己的共同体名(即 snmpd.conf 中所配置项)
  > 点击 Save
  ## 最上方出现 Save Successful 字样,并打印出本机相关信息为成功,如出现 SNMP Error 为失败
  ## 现在已经开启了对本机的监控
  7、查看图像信息
  > 点击 graphs –> Default Tree –> Host:Localhost
  ## 这时会发现图像无法正常显示(裂图),因为还没有生成数据
  # crontab -u cacti -e
  */5 * * * * /usr/local/php/bin/php /usr/local/nginx/html/cacti/poller.php >/dev/null 2>&1
  ## 以 cacti 用户身份创建任务计划,用来生成采集数据
  ## 如果不加 >/dev/null ,会导致每次执行任务计划时,系统都向 cacti 发一封邮件,内容为生成的数据
  ## 你可以等待 5 分钟,或者 su – cacti 后,直接执行任务计划中的命令
  ## 当 /usr/local/nginx/html/cacti/rra 目录下生成文件时,就可以去 web 页面查看图像数据
  ## 这时就可以将图像显示出来了
  ## 也许有可能会出现有图无数据的情况,要么多刷新两次,要么检查 PHP 时区是否配置错误
  ## 到此,Cacti 安装完成!
  附 ( 之前遇到的问题 ):
  1、访问 web 安装 Cacti 时,页面空白
  日志显示如下:
   [:error] PHP Fatal error:Call to undefined function session_unregister() in /usr/local/apache/htdocs/cacti/lib/functions.php on line 408, referer:http://192.168.0.220/cacti/install/index.php
  解决方法:
  vim /usr/local/apache/htdocs/cacti/lib/functions.php
  408      session_unregister($var_name);# 注释掉 408 行
  2、PHP 时区报错,解决方法去 php.ini 中改一下即可
  3、Cacti 不出图,查看 rra 目录有没有生成数据,最为关键。
  如没有数据查看任务计划是否配置有错
  手动生成数据是否成功
  rra 目录权限问题
  4、Cacti 出图无数据,查看系统时间、PHP 时区是否正确

页: [1]
查看完整版本: Cacti 开源监控软件安装、配置