Cacti的安装与插件开发(一)

本文详细介绍Cacti网络监控系统的安装步骤与配置方法,包括SNMP协议与RRDTool的配置、Cacti数据库搭建、定时任务设置等内容。

Cacti的安装与插件开发(一)

        Cacti的安装比较简单,我给自己总结了一下。因为Cacti是需要以snmp协议和rrdtool工具来支持的,所以这两个是一定要先安装好的。对于监控端需要安装net-snmp-utils,被监控端(也即代理端)仅需要安装net-snmp即可。但是如果监控端需要接受代理端的状态,则同样需要安装net-snmp。直接使用yum安装即可。安装完成以后记得启动服务,且加入开机启动里。注意net-snmp生成的是snmpd,net-snmp-utils生成的则是snmptrapd,将这两个服务设置成开机启动即可。


1.编辑snmp的配置文件,路径位于/etc/snmp/snmpd.conf,需要修改三段代码,分别如下:

    a)将“com2sec notConfigUser  default       public”修改为
              com2sec notConfigUser  127.0.0.1      mypublic

        其中127.0.0.1是指允许通过那台主机地址获取snmp状态,默认是全部允许的,所以一定要改一下。后面的public字段是community的字符串,也就是相当于验证码了,只有验证码匹配正确,才能获取到相应的snmp状态。默认是public,所以在生产环境一定要换一个复杂的字符串,我在此处为了试验的简单性,就稍微做了调整,改成了mypublic.


    b)将“access  notConfigGroup ""      any       noauth    exact  systemview none none” 修改为
              access  notConfigGroup ""      any       noauth    exact  all   none none


    c)将“view all    included  .1                               80”        前面的注释去掉
              view all    included  .1                               80

到此为止,snmp的简单配置就完成了。下面开始安装cacti。


2.下载cacti的安装包cacti-0.8.8f.tar.gz(这是目前官网最新版 )


3.解压

    注意:解压位置很重要,如果我们没有使用虚拟主机的话,是要放在apache的DocumentRoot下面的。

    [root@centos1 htdocs]# grep "DocumentRoot" ../conf/httpd.conf
    # DocumentRoot: The directory out of which you will serve your
    DocumentRoot "/usr/local/apache/htdocs"

    我的是在“/usr/local/apache/htdocs/”下面,所以解压到此位置,然后做个软连接。

# tar xvf  cacti-0.8.8f.tar.gz -C /usr/local/apache/htdocs/

# cd /usr/local/apache/htdocs/

# ln -sv cacti-0.8.8f  cacti


4.添加cacti用户

# useradd cacti


5.修改cacti目录及文件权限

# cd /usr/local/apache/htdocs/cacti

# chown -R root:root *

# chown -R cacti:cacti rra/ log/


6.加载cacti数据库,当然这个前提是有cacti数据库,以及该数据库的执行用户,所以下一步先创建cacti的数据库——cactidb,以及该数据库的执行用户——cactiuser。

    a)登陆数据库

myql -uroot -p

    b)创建数据库

mysql> create database cactidb;

    c) 创建数据库用户并授权

mysql> grant all privileges on cactidb.* to cactiuser@localhost identified by 'cactiuser' with grant option;

mysql> grant all privileges on cactidb.* to cactiuser@127.0.0.1 identified by 'cactiuser' with grant option;

    d) 选择数据库,并且载入cacti.sql

mysql> use cactidb;

mysql> source /usr/local/apache/htdocs/cacti/cacti.sql


7.修改cacti的配置文件

# vi /usr/local/apache/htdocs/include/config.php  将以下项修改为你配置好的内容,如下:

$database_type = "mysql";
$database_default = "cactidb";
$database_hostname = "localhost";
$database_username = "cactiuser";
$database_password = "cactiuser";
$database_port = "3306";
$database_ssl = false;

/*
   Edit this to point to the default URL of your Cacti install
   ex: if your cacti install as at http://serverip/cacti/ this
   would be set to /cacti/
*/
$url_path = "/cacti/";

修改好之后就 可以保存退出来。


8.cacti的浏览器安装与配置

在浏览器上访问cacti的IP地址加cacti,比如我的IP地址是192.168.2.88,那么我就要访问192.168.2.88/cacti、第一次登陆会有安装指南,默认的用户名密码都是admin,第一登陆以后会提示我们修改,修改完成之后会重新登陆。

注意:这里有几处需要配置,如下如配置即可,snmp协议使用2c,rrdtool选择你安装的,我的是1.4.X版本的。还有在路径选项卡下要把php的执行路径和rrdtool的执行路径完整的写进去,保证每个路径下面都提示:[OK: FILE FOUND]即可。



9.添加定时执行任务,这个是定时采集数据用的。

# crontab -e

*/5 * * * * /usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php

保存后退出即可,注意我们在制定定时任务时最好先手动执行以下,看看是否报错,没问题再添加进去。


10.等一会点开device应该就可以看到主机状态为up了。

点开graph——localhost发现没有图也没有数据,可以使用rrdtool来手动执行看下rrd数据库中有没有采集到数据。如下:

# [root@centos1 rra]# rrdtool fetch localhost_mem_swap_4.rrd AVERAGE     显示如下即表示已经收集到数据了

                    


现在再去看图,发现已经有数据了,再等一会就会出现图了。


本来以为今天可以把cacti的插件开发及模板的创建总结完,没想到只写到这。太晚了,明天继续。


注意:当执行

[root@centos1 rra]# /usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php    如果报错如下:
/usr/local/php/lib/php/extensions/no-debug-zts-20121212/xcache.so doesn't appear to be a valid Zend extension

这是因为xcache自从3.0之后xcache.so的加载方式不一样了


将xcache的配置文件修改一行代码为

extension = xcache.so

这样就可以了。

评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值