Cacti是用php语言实现的一个软件,它的主要功能是用snmp服务获取数据,然后用rrdtool储存和更新数据,当用户需要查看数据的时候用rrdtool生成图表呈现给用户。因此,snmp和rrdtool是cacti的关键。
而且你不需要理解rrdtool的复杂参数,它提供非常强大的数据、用户管理功能,它可以指定用户查看host、树状结构、以及任何一张图,还可以与ldap结合提供身份认证。
Snmp关系着数据的收集,rrdtool关系着数据存储和图表的生成。snmp抓到数据不是存储在mysql中,而是存在rrdtool生成的rrd文件中(在cacti根目录的rra文件夹下,一般以rra为后缀名称)。简单原理图如下:
1、Cacti服务器端安装
官网下载cacti相关软件,一共需要三个软件,下载地址分别如下:
- http://www.cacti.net/downloads/cacti-0.8.8h.tar.gz
- http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.5.tar.gz 或者 使用yum安装
- http://www.cacti.net/downloads/spine/cacti-spine-0.8.8h.tar.gz
2、安装LAMP系统环境
这里采用yum安装方式,安装命令:
yum install httpd mysql mysql-server mysql-delve php php-mysql php-json php-pdo -y
或者
yum install httpd*
yum install mysql*
yum install php*
其中,mysql数据库安装后,需要启动初始化,并使用mysqladmin配置一下登录密码,具体教程参见http://www.cnblogs.com/xiaoluo501395377/archive/2013/04/07/3003278.html
3、安装rrdtool采集工具
安装rrdtool之前需要安装相应的lib库,如下安装:
yum install cairo-devel libxml2-devel pango-devel pango libpng-devel freetype freetype-devel libart_lgpl-devel intltool
源码安装rrdtool
#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/
或者采用yum安装(我的rrd版本为1.3.8)
yum search rrdtool
yum install rrdtool*
4、安装SNMP服务
yum install net-snmp net-snmp-utils –y
(注意 不要只安装net-snmp 这样在配置如下界面时,会找不到相关的工具 比如snmpget)
安装后 修改可以访问snmp的网段和community,因为我是yum安装的,配置文件默认在/etc/snmp/中的snmpd.conf
添加:
com2sec mynetwork 192.168.122.0/24 public
并且:
chkconfig snmpd on
5、安装cacti主程序
tar xzf cacti-0.8.8h.tar.gz && mv cacti-0.8.8h /var/www/html/cacti/ 将tar包所有文件解压到/var/www/html/cacti/下
6、配置文件夹权限
#useradd cacti
#chown -R cacti:cacti /var/www/html/cacti
7、创建cacti数据库
mysql -uroot –p 输入你的密码进入数据库,然后创建数据库: create database cacti default charset=utf8;创建数据库 grant all on cacti.* to cacti@'localhost' identified by "cacti";创建用户并授权 flush privileges; 刷新权限
导入cacti数据库
#cd /var/www/html/cacti
#mysql -uroot -p123456 cacti < cacti.sql
- 配置完mysql后,我们需要设置cacti rra、log 目录的权限,这里设置为777:
- chmod -R 777 /var/www/html/cacti/rra/
- chmod -R 777 /var/www/html/cacti/log/
配置完毕后,有可能出现在浏览器上显示空白的页面,这和cacti文件及文件夹的权限有很大关系
8、修改cacti全局配置文件
vim /var/www/html/cacti/include/config.php为如下配置:
database_default = cacti
database_username = cacti
database_password = cacti (用户名和密码和你创建cacti数据库时指定的用户和密码要对应)
9、添加Rrdtool抓图任务计划
*/5 * * * */usr/bin/php /var/www/html/cacti/poller.php >>/tmp/cacti_rrdtool.log 2>&1
10、Cacti安装完毕,测试访问
通过http://ip/cacti/访问出现如下界面,点击NEXT下一步。
默认一直点击下一步:
进入登录界面,第一次需要修改密码:
11、进入Cacti配置管理界面
12、点击device,可以添加设备,默认可以看到127.0.0.1这台服务器。右上角Add可以增加设备。
设备添加方法可见 http://wenku.baidu.com/link?url=VPoNPmHQzcbJGEzcjv3UmcNvQbQbsrwG-WO3wESrsvn0pQK8It67dk30vm7bdJhzN4S9kiUUvVOIEUK6MRCSxMYvwQaMLd8j6u_b57n5Whi
点击localhost可以看到具体的设置,包括采用的snmp协议版本,监控的名称等:
如果出现snmp error,检查snmp服务是否已启动,或者是否有权限。出现如上信息则表示正常。
出现snmp error解决方法:http://www.shangxueba.com/jingyan/125453.html