cacti安装与配置

原来我写过一篇文件讲过怎么样安装配置mrtg与nagios来进行系统监控,今天,我继续介绍一个新的系统监控软件:cacti。

cacti其实是一套php程序,它运用snmpget采集数据,使用rrdtool绘图。它的界面非常漂亮,更难能可贵的是,它提供了强大的数据管理和用户管理功能,一张图是属于一个host的,每一个host又可以挂载到一个树状的结构上。用户的管理上,作为一个开源软件,它居然做到为指定一个用户能查看的“树”、host、甚至每一张图,还可以与LDAP结合进行用户的验证!

介绍完功能之后,我们开始来正式安装cacti。

下载cacti
cacti是一个开源的软件,我们可以在他的官方网站上下载到最新的稳定版本(目前为0.8.7c),下载地址如下:
http://www.cacti.net/spine_download.php

下载完毕之后,将其解压到相应位置,并配置好你相应的web程序(apache,ngnix等)

运行条件:

1,mysql服务器:
cacti是依赖于mysql来运行的。所以:

  • 你的php必须支持mysql连接
  • 有一个可读写的mysql数据库

 

确定好这两个之后,修改cacti解压后根目录里面的include/config.php文件,并将cacti.sql导入到数据库里面。

2,rrdtool:
因为cacti绘图是依赖于rrdtool这个工具,所以,我们还要安装他相关的rpm包。这些包,RHEL(CentOS)的网方源中是没有的,但是我们可以从rpmforge上面找到,当然,应该也可以到rrdtool的官方网站上找到。我这里只提供rpm的下载地址:
rrdtool-1.2.30-1.el5.rf.i386.rpm
rrdtool-devel-1.2.30-1.el5.rf.i386.rpm
perl-rrdtool-1.2.30-1.el5.rf.i386.rpm
我们要下载并安装以上三个包才可以正常使用cacti。

3,snmp的配置
因为cacti要使用到snmpget等一系列的snmp命令,我们要在采集机器上(也就是安装cacti的机器上)安装net-snmp-utils以及perl-Net-SNMP。这个相对来说就非常简单了,我们用yum就可以直接搞定。

被采集的机器上面必须要安装snmpd服务,其配置方法可以参看我那篇关于MRTG的文件(点击这里进入

这里有一个样版,可以参考一下:

rocommunity     public
com2sec notConfigUser  default       public
group   notConfigGroup v1           notConfigUser
group   notConfigGroup v2c           notConfigUser
view    systemview     included      system
access  notConfigGroup ""      any       noauth    exact  systemview none none
syscontact root <root@localhost> (configure /etc/snmp/snmp.local.conf or use snmpconf)
syslocation Not defined (edit /etc/snmp/snmpd.conf or use snmpconf)
proc mountd
proc ntalkd 4
proc postfix 10 1
proc /usr/sbin/sshd 100 0
proc httpd2 100 0
exec echotest /bin/echo hello world
disk / 10000
load 12 14 14
pass .1.3.6.1.4.1.4413.4.1 /usr/bin/ucd5820stat

安装cacti

cacti的安装相对来说非常简单,只要你把我说的做到位(特别是mysql方面的东西),这个就非常简单了。

打开你开始设置的cacti的位置(我这里设置的http://127.0.0.1/cacti/),一直点击NEXT就可以了。

在点击FINISH之后,就会跳转到cacti的登陆页面,这个时候我们要输入默认的用户名与密码admin/admin,之后,会要求你输入两次一个新的密码。

配置cacti

系统配置
为了让生成的图例中文字正常显示,我们要先设置字体文件位置。

点击左上的Console按钮,然后点击左则列表下面的settings,最后点击Visual标签项,在下面的Default RRDtool 1.2 Fonts中的font size位置全部填上:

/usr/share/rrdtool/fonts/DejaVuSansMono-Roman.ttf

Path标签项中的RRDTool Default Font Path也填 上面的文件路径。

当然,你也可以用别的字体,可以自己测试下。

其他的配置,网上相关的教程就很多了,我这里就不说了。