目录:
一 Cacti介绍
二 Cacti架构
三 Cacti工作流程
四 Cacti的安装
五 Cacti基本设置
六 Cacti的使用
七 Cacti插件和模板的使用
八 问题解决
一、Cacti介绍无论是稍有规模的IT公司还是大型的ICP、ISP,都需要面对一个问题,就是如何实现对网络和服务器的性能的实时监测。RRDTool的绘图功能非常强大,不过由于RRDTool的命令非常复杂繁多,并且不包含数据采集的功能,所以非常难以入门。有很多喜爱RRDTool的程序员为其写应用的平台或脚本,而Cacti就是其中的佼佼者。
Cacti是一套完全面向RRDTool的B/S系统,它在MySQL数据库中存储了所有RRDTool创建图像需要用到的信息以及管理信息。
Cacti的主要功能有:
· 数据定时采集 · 图像绘画与显示 · 树状的主机和图像管理 · RRDTool信息管理 · 用户和权限管理 · 模板导入导出
Cacti使用snmpget命令采集数据,使用RRDTool绘图。它的界面简洁直观,让你根本无需明白RRDTool的众多参数即可轻易的绘出漂亮的图形。此外,它还提供了强大的数据管理和用户管理功能。在图像管理上,Cacti采用了树状结构的查看界面,在用户的管理上,能对用户的权限进行细致的划分,甚至支持使用LDAP进行用户验证。不得不提的是Cacti还提供模板的功能,自己可以为某项监测内容建立模板,也可以导入别人做好的模板。
二、Cacti架构整个Cacti系统由4个部分组成(如图1):Cacti页面(PHP)——用户控制的平台,用户在此进行所有的设置; SNMP采集工具——Unix下使用 Net-SNMP软件包自带的“snmpget”和“snmpwalk”等程序,windows下使用php的snmp功能; RRDTool绘图引擎——性能数据的存储和绘画图像; MySQL数据库——储存RRDTool绘图所需的信息,如模板、rra、主机对应的信息等,要注意的是MySQL数据库并不保存性能数据,性能数据保存在RRDTool自己的数据库格式rrd文件中。
图1 Cacti的架构
三、Cacti的工作流程1. 定时采集数据Cacti会定时运行数据采集脚本,使用“snmpget”命令或其它自己定义的方式进行数据的采集;
2. 存储数据
使用RRDTool的“update”指令将采集到的数据储存到rrd文件中;
3. 用户要查看某台设备的流量
在Cacti的PHP页面上点击该设备-> Cacti在数据库中寻找该设备对应的rrd文件的名称-> Cacti运行命令让RRDTool进行绘图
四、Cacti安装
该安装文档的平台是Linux,其它平台上的安装方法请参照Cacti的官方网站。
下面具体介绍Cacti的安装步骤:
1、修改MySQL的最大连接数
# vi /etc/my.cnf ##添加以下行##
[mysqld]
#设置最大连接数为1000 设置每用户最大连接数为500 set-variable=wait_timeout=200 #设置200秒后将关闭空闲(IDLE)的连接,但是对正在工作的连接不影响
保存退出,并重新启动MySQL 重新启动MySQL后使用下面的命令查看修改是否成功
# mysqladmin -uroot -p variables Password: | max_connections | 1000 | max_user_connections | 500 | wait_timeout | 200
可以看到以上项说明修改成功
从RRDTool官方网站http://oss.oetiker.ch/rrdtool/pub/下载最新的RRDTool包,当前最新的版本是rrdtool-1.4.5.tar.gz 。在该下载页面上,还可以看到有一个“libs”的目录,里面的包也要全部下载。当然,在CentOS下也可以选择yum安装,则省去了编译安装之麻烦。
从libs目录下可以看到有pango、freetype、libxml2、glib、cairo、libpng、fontconfig、zlib等软件包
CentOS下采用yum安装这些依赖包:
# yum -y install pango* freetype* libxml2* glib* cairo* libpng* fontconfig* zlib*
安装rrdtool
# wget -c http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.5.tar.gz
# tar zxvf 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/
测试:
# rrdtool -v RRDtool 1.4.5 Copyright 1997-2010 by Tobias Oetiker <tobi@oetiker.ch>
Compiled Aug 11 2011 16:07:55
Usage: rrdtool [options] command command_options
Valid commands: create, update, updatev, graph, graphv, dump, restore,
last, lastupdate, first, info, fetch, tune,
resize, xport, flushcached
RRDtool is distributed under the Terms of the GNU General
Public License Version 2. (www.gnu.org/copyleft/gpl.html)
For more information read the RRD manpages
看到如上信息则说明rrdtool安装成功 RRDTool官方的详细安装方法可以在下载的RRDTool源码里的doc/rrdbuild.pod文件里找到。 (责任编辑:IT) |