fairyguo 发表于 2019-1-11 11:44:27

部署监控系统Cacti及其运行环境

  概述: Cacti类似于MRTG监控,而MRTG多用于IDC,方便客户了解监控情况;Cacti是基于PHP开发的,一个rrdtool工具;原理是通过snmp协议采集数据,使用rrdtool绘制图形
  一、Cacti运行环境部署
  Cacit 运行环境需要 PHP + Mysql + rrdtool 以及 snmp 工具的支持。
  系统:CentOS 5.6 x86 64位
  Catci:


[*]cacti-0.8.7i-PIA-3.1.tar
[*]rrdtool-1.4.5.tar
[*]net-snmp-*
  PHP:


[*]php-5.3.10.tar.gz
[*]curl-7.15.0.tar.gz
[*]freetype-2.1.9.tar.gz
[*]gettext-0.16.1.tar.gz
[*]gd-2.0.35.tar.gz
[*]jpegsrc.v6b.tar.gz
[*]libart_lgpl-2.3.17.tar.gz
[*]libpng-1.2.18.tar.gz
[*]libxml2-2.6.32.tar.gz
[*]zlib-1.2.3.tar.gz
  Nginx:
  Nginx-0.8.51.tar.gz
  Mysql:
  mysql-5.5.8.tar.gz
  以上为LNMP环境基本搭建,不会的请参考http://linuxgeek.blog.运维网.com/6014609/995228
  特别指出:
  在编译rrdtool时,可能会出现一些问题:
  例如:
  如果 ./configure 时出现下面这个错误


configure: error: Please fix the library issues listed above and try again.
解决方法(转运维网):
  第一:安装 cgilib-0.5.tar.gz
  从这里下载:
  weget http://download.chinaunix.net/down.php?id=2531&ResourceID=1333&site=1
  tar zxvf cgilib-0.5.tar.gz
  cd cgilib-0.5
make
cp libcgi.a /usr/local/lib
cp cgi.h /usr/include
  如果还不行,请看
  第二:安装libart_lgpl-devel这个包
  yum –y install libart_lgpl-devel
  如果还报错configure: error: Please fix the library issues listed above and try again. 请看
  第三:把这两个包装上pango-devel cairo-devel
  yum –y install pango-devel* cairo-devel*
  然后在
  cd cd rrdtool-X.X.X
./configure --prefix=/usr/local/rrdtool
  这样肯定能行,一般在第二部就能解决了。
  二、部署Cacti
  安装 / 配置 cacti


[*]# tar xf cacti-0.8.7i-PIA-3.1.tar
[*]# mv cacti-0.8.7i-PIA-3.1 /database/wwwroot/cacti
( 把 cacit 剪切到自定的 web 目录下 )
[*]# chmod 777 – Rf /database/wwwroot/cacti
[*]( 设置目录权限 , 避免因权限问题而导致目录无法写入 )
[*]# cd /database/wwwroot/cacti
[*]




1
















1




Mysql











1




中创建一个新的库,并导入






  cacti





1
















1




目录中






  cacti.sql 并设置好该表的用户权限,然后编辑 cacti 的数据库配置文件。

[*]# vi /database/wwwroot/cacti/include/config.php

$database_type= “ mysql ” ;
$database_default = “数据库名称” ;
$database_hostname = “默认是 localhost ” ;
$database_username = “用户名” ;
$database_password = “密码” ;
  更改用户、密码等项与上面给出的对应保存退出

[*]# crontab – e (加入自动执行规则,每 5 分钟执行。)

*/5 * * * * /usr/local/php/bin/php /data/web_server/admin/cacti/poller.php\
> /dev/null 2>&1
(其中 /usr/local/php/bin/php 这个为 php 的安装目录)
[*]保存退出:wq
[*]在 nginx上设置好 cacti 所在 web 目录
[*]打开浏览器 http://domainname/cacti
[*]进入 cacti 的初始设置页面
第一次默认登陆账号:admin 密码 admin
登陆后它就会让你立即修改新密码
  注意事项:
  1.由于mysql版本的区别,可能会报出cacti.sql中MYISAM附近语法错误,此可以将创建表的引擎定义去掉,mysql默认是MYISAM引擎
  2.在php poller.php同步数据时,可能会报出关于时间和时区的问题,此可以在/database/wwwroot/cacti/include/config.php 设置相应时区,
  如:date_default_timezone_set('Asia/Chongqing');
  Cacti相关介绍:
  当修改好新密码进入,第一个显示出的页面就是让你设置 rrdtool,snmp 等工具的路径。这是个很重要的环节,必须无误,要不然 cacti 将无法生成出统计图。


snmpwalk Binary Path : /usr/bin/snmpwalk
snmpget Binary Path: /usr/bin/snmpget
RRDTool Binary Path: /usr/local/rrdtool/bin/rrdtool
PHP Binary Path: /usr/local/php/bin/php
Cacti Log File Path: /database/wwwroot/cacti/log/cacti.log
Cactid Poller File Path: /database/wwwroot/cacti/poller.php
  默认的配置中会出现许多“ NotFound ”
  按照上边的路径把“ NotFound ”的项都重新填上。
  手动运行一次
  /usr/local/php/bin/php /database/wwwroot/cacti/poller.php > /dev/null 2>&1
  三、客户端启用SNMP服务
  稍微修改系统中 snmp 的配置


# vi /etc/snmp/snmpd.conf

[*]com2secnotConfigUser default public
改为:com2secnotConfigUser 127.0.0.1 public
[*]access notConfigGroup "" any noauth exact systemview none none
改为:accessnotConfigGroup""anynoauthexact all none none
[*]#view all included .1 80
将前面的 # 注释 去掉。
保存退出 :wq
[*]重新启动 snmp 服务
# service snmpd restart




欢迎期待下篇,下篇将详细介绍监控服务器磁盘,内存,IO等



页: [1]
查看完整版本: 部署监控系统Cacti及其运行环境