fdjhj 发表于 2015-8-28 09:06:41

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 改为 allview 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 -p123456mysql> create database cactidb;mysql> grant all on cactidb.* to cactiuser@localhost identified by ‘cactipasswd';## 创建 cactidb 库,添加授权用户 cactiuser ,登录密码为 cactipasswdmysql> 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.php408      session_unregister($var_name);# 注释掉 408 行2、PHP 时区报错,解决方法去 php.ini 中改一下即可3、Cacti 不出图,查看 rra 目录有没有生成数据,最为关键。
   如没有数据查看任务计划是否配置有错
   手动生成数据是否成功
   rra 目录权限问题4、Cacti 出图无数据,查看系统时间、PHP 时区是否正确
页: [1]
查看完整版本: Cacti 开源监控软件安装、配置