(应某位博友,兼资小结自用)
CACTI简易教程
1、
简介
是一个为监控网络节点(可以是服务器,交换机,存储设备,防火墙等)运行状态的可视化系统,被公认为是MRTG的升级应用,并且是开源的哦。其采用RRDTOOL来存储节点数据和图表绘制,具有比较灵活的趋势分析和实时分析的效果。其主机模板、查询模板、图形模板、数据源模板等都可以进行输入/输出,方便交流。最值得一提的是,从PLUGIN ARCHITECT 1.1引入后,CACTI具有了很强的可扩展性,使用者可以较容易地进行二次开发来扩展自定义的特殊需求,网络上也有很多的成熟的二次开发包供用户扩展使用。比如THOLDS对阀值检测报警、REPORTS对数据报表定制等。
2、
安装
A、
mysql、apache、php的安装不需要多讲了,都是CACTI运行的必需环境。
B、
net-snmp软件包(5.0.9版本以上即可)可从网上下载和LINUX资源光盘中找到,应当包括主程序包、devel开发包、libs库文件包、utils工具包,CACTI依赖于工具包中snmpwalk、snmpget命令来从网络结点MIBII库中查询数据。
C、
rrdtool是CACTI存储数据和图表绘制的引擎,从网络上下载一个较新的安装即可。
D、CACTI:解压缩下载包至你的APACHE DOCUMENT(如/www/htdocs)HTTP根目录然后改目录名为cacti或其它目录然后在APACHE配置文件中加/CACTI的虚别名(Alias /cacti “your cacti path”),按CACTI包提供的向导安装好数据库表结构和元数据,还有改好include/config.php中关于数据库连接的配置项。
3、
配置
A、
数据库访问:用root连接mysql后,执行
grant all on cactidb.* to cactiuser@localhost identified by ‘cactipw’ with grant option;
赋权给
cactiuser
用户访问
CACTI
数据库。
B、
配置SNMP AGENT:任何被CACTI主机监控的网络节点都需要支持SNMP,LINUX上就是一个SNMPD DAEMON,通常的需要在/etc/snmp/snmpd.conf文件中至少配置CACTI主机可以查询本机MIB II信息。可以在CACTI主机用snmpwalk命令来试之间的SNMP连接是否畅通。其中SNMP版本需要SNMP AGENT和CACTI的utils(配置在HOST页面中)一致。
C、
路径配置:(按实际配置)
snmpwalk Binary Path
:
/usr/local/snmp5.0.9/bin/snmpwalk
snmpget Binary Path : /usr/local/snmp5.0.9/bin/snmpget
RRDTool Binary Path : /usr/local/rrdtool-1.0.50/bin/rrdtool
PHP Binary Path : /www/php/bin/php
Cacti Log File Path : /www/htdocs/cacti/log/cacti.log
Cactid Poller File Path : /www/htdocs/cacti/poller.php
snmpget Binary Path : /usr/local/snmp5.0.9/bin/snmpget
RRDTool Binary Path : /usr/local/rrdtool-1.0.50/bin/rrdtool
PHP Binary Path : /www/php/bin/php
Cacti Log File Path : /www/htdocs/cacti/log/cacti.log
Cactid Poller File Path : /www/htdocs/cacti/poller.php
D、用admin/admin登录,应该可以添加网络节点了,注意尽量用UCD-NET类型的数据方法模板来构造数据源。另外缺省的MEM模板数据不是很好,只是SHARED、CACHE、BUFFER等分类图表显示。
4、
使用技巧
A、
可以使用LDAP来实现USER库共享。
B、
可以在部署PLUGIN ARCHITECT 1.1后,下载所需的扩展包来增加功能。
C、
用XML定义来扩展数据查询模板和数据源模板,这时候通常应用于INDEX数据(即多行数据对应)
D、用数据模板来扩展单行数据,即固定OID返回数据。
E、
CACTID是用C语言编写的POLLER引擎,可以数倍提高数据提取速度。我有对此进行了SNMP V3全面支持的二次开发。
RRDTOOL有现成的PM和LIB供PERL/C进行二次开发。
本文转自 dannyy1026 51CTO博客,原文链接:http://blog.51cto.com/dannyyuan/47914