作为一名Linux SA,日常最重要的就是保证网站正常稳定的运行,我们需要实时监控网站、服务器的运行状态,这时需要借助开源软件(cactinagioszabbix等)监控来实现。

Cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。因此,snmprrdtoolcacti的关键。

Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。snmp抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目录的rra文件夹下,一般以rra为后缀名称)。简单原理图如下:

Cacti监控平台搭建_第1张图片

  • Cacti服务器端安装

官网下载cacti相关软件,一共需要三个软件,下载地址分别如下:

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

http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.5.tar.gz

http://www.cacti.net/downloads/spine/cacti-spine-0.8.8a.tar.gz

  • 安装LAMP系统环境

这里采用yum安装方式,安装命令:

yum install  httpd  mysql   mysql-server    php   php-mysql php-json php-pdo   -y 

  • 安装rrdtool采集工具

安装rrdtool之前需要安装相应的lib库,如下安装:

yum install cairo-devel libxml2-devel pango pango-devel –y


tar xzf rrdtool-1.4.5.tar.gz  ;

cd rrdtool-1.4.5  ;

 ./configure --prefix=/usr/local/rrdtool/

make  &&make install ;

ln -s /usr/local/rrdtool/bin/* /usr/local/bin/  ln -s 是做软链接的意思,相当于windows的快捷方式。前面是原文件,后面是链接后的文件目录

  • 安装SNMP服务

yum install net-snmp  net-snmp-utils  y

service snmpd start

service snmpd status    查看snmpd的状态

  • 安装cacti主程序

tar xzf cacti-0.8.8a.tar.gz && mv cacti-0.8.8a   /var/www/html/cacti/

  • 创建cacti数据库

mysql -uroot 输入你的密码进入数据库,然后创建数据库:

create database cacti;创建数据库

grant all on cacti.* tocacti@'localhost' identified by "123456";创建用户并授权

flush privileges; 刷新权限

mysql配置完毕后,把cacti数据导入cacti数据库

mysql  -ucacti -p123456  cacti

配置完mysql后,我们需要设置cacti  rralog 目录的权限,这里设置为777

chmod -R  777 /var/www/html/cacti/rra/

chmod -R  777 /var/www/html/cacti/log/

  • 修改cacti全局配置文件

vi/var/www/html/cacti/include/config.php为如下配置:

Cacti监控平台搭建_第2张图片

  • 添加Rrdtool抓图任务计划

*/5  * * * */usr/bin/php /var/www/html/cacti/poller.php >>/tmp/cacti_rrdtool.log 2>&1

  • Cacti安装完毕,测试访问

通过http://ip/cacti/ 访问出现如下界面,点击NEXT下一步。

Cacti监控平台搭建_第3张图片

默认一直点击下一步:

Cacti监控平台搭建_第4张图片

 进入登录界面,第一次需要修改密码:

默认:账号:admin  密码:admin

Cacti监控平台搭建_第5张图片

进入Cacti配置管理界面

Cacti监控平台搭建_第6张图片

点击device,可以添加设备,默认可以看到127.0.0.1这台服务器。右上角Add可以增加设备。

Cacti监控平台搭建_第7张图片

点击localhost可以看到具体的设置,包括采用的snmp协议版本,监控的名称等:

Cacti监控平台搭建_第8张图片

如果出现snmp error,检查snmp服务是否已启动,或者是否有权限。出现如上信息则表示正常。

点击左上角第二个按钮,graphs查看cacti图像选择localhost主机右边会显示cacti5分钟的监控图像。

Cacti监控平台搭建_第9张图片

添加监控主机:

Cacti监控平台搭建_第10张图片

Cacti监控平台搭建_第11张图片

Cacti监控平台搭建_第12张图片

Cacti监控平台搭建_第13张图片Cacti监控平台搭建_第14张图片Cacti监控平台搭建_第15张图片Cacti监控平台搭建_第16张图片




Can't locate ExtUtils/MakeMaker.pm in @INC (@INC contains: /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5 .) at Makefile.PL line 1.

BEGIN failed--compilation aborted at Makefile.PL line 1.

make[3]: *** [perl-piped/Makefile] Error 2

make[3]: Leaving directory `/root/rrdtool-1.4.7/bindings'

make[2]: *** [all-recursive] Error 1

make[2]: Leaving directory `/root/rrdtool-1.4.7/bindings'

make[1]: *** [all-recursive] Error 1

make[1]: Leaving directory `/root/rrdtool-1.4.7'

make: *** [all] Error 2

系统:centos 6.3 64bit 编译rrdtool时出错如上。
解决方法:

yum install perl-CPAN -y