简单来说,Cacti就是rrdtool的一个forefront,它内置了快速的获数据取工具、优秀的绘图模板以及许多设计精良的数据获取脚本,从而可以通过结合rrdtool强大的数据抓取、数据存储和绘图功能,轻松实现主机负载、网络流量等信息的走势图的绘制。目前其最新的软件版本是0.8.7g。
Cacti的实例应用
这些都是在网上找的资料.......
好了,介绍完了,这回就要开始搭建了:
1.搭建lnmp平台,用yum,很简单......
service snmpd start
service nginx start
service php-fpm start
这些你要保证开机启动,我的selinux的关闭的.......
2.安装snmp,使用SNMP采集数据
[root@www /]# yum -y install lm_sensors net-snmp net-snmp-utils
3.cacti又依赖于rrdtool生成图表所以首先安装rrdtool:
[root@www /]# yum -y install cairo-devel glib2-devel pango-devel intltool 安装依赖包
[root@www /]# wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.7.tar.gz
[root@www /]# tar -zxvf rrdtool-1.4.7.tar.gz
[root@www /]# cd rrdtool-1.4.7
[root@www /]# ./configure --prefix=/usr/local && make && make install
4.进入到数据库创建cacti数据和创建一个用户:
create database cactidb default character set utf8; #创建数据库 grant all on cactidb.* to cactiuser@localhost identified by '123456'; # 创建一个mysql用户
use cactidb # 使用刚才创建的数据库
source /usr/local/nginx/html/cacti/cacti.sql # 导入cacti数据
5.编辑cacti配置文件
[root@www /]# vi /usr/share/nginx/html/cacti/include/config.php
$database_type="mysql"; # 数据库类型
$database_default="cactidb"; # 数据库名字
$database_hostname="localhost"; # 数据库主机
$database_username="cactiuser"; # 数据库用户
$database_password="123456"; # 数据库密码
$database_port="3306"; # 数据库端口
$database_ssl=false;
6.然后修改nginx配置文件像下面:
[root@www cacti]# vi /etc/nginx/conf.d/default.conf
用yum装的lnmp,nginx配置文件要在这里修改,如果在nginx.conf里修改location,那么nignx就会启动失败
location / {
root html;
index index.php;
}
location ~ \.php$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
fastcgi_buffer_size 8k;
}
注意:这个一定要写对,否则会报403的错,要不就是页面过大之类的......
然后就是重启nginx
7.设置时区:
这个如果不设置的话,当你访问cacti的时候页面可能全是日志,告诉你时区不对
[root@www cacti]# vi include/global_constants.php
在第二行添加
date_default_timezone_set("Asia/Chongqing");
8. 配置snmp,编辑/etc/snmp/snmpd.conf:
vi /etc/snmp/snmpd.conf
然后找到41行将public改成一个较为复杂的名字:
com2sec notConfigUser default public
然后找到62行
access notConfigGroup "" any noauth exact systemview none none
将systemview改成all:
access notConfigGroup "" any noauth exact all none none
然后去掉85行的注释:
view all included .1 80
有时候这个也可以注释.......
保存配置文件后启动snmp
service snmpd start
9. 计划任务
[root@www cacti]# crontab -u cactiuser -e
然后就可以访问了: http://192.168.1.31/cacti,为了省事就不上传图片了......