Cacti是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具。Cacti中文版是通过 snmpget来获取数据,使用 RRDtool绘画图形,而且你完全可以不需要了解RRDtool复杂的参数。
一.测试snmp是否正常
- #snmpwalk -c public -v 2c localhost
- #snmpwalk -v 1 -c public localhost IP-MIB::ipAdEntIfIndex
- IP-MIB::ipAdEntIfIndex.61.xxx.xxx.xxx = INTEGER: 2
- IP-MIB::ipAdEntIfIndex.127.0.0.1 = INTEGER: 1
- IP-MIB::ipAdEntIfIndex.172.xxx.xxx.xxx = INTEGER: 3
也可以用snmpd -f -Le 命令查看当前有没有出什么错
FQA:
1、如果磁盘监控不到
请使用Cacti中文版中自带的模板 ucd/net – Get Monitored Partitions ,然后在被监控的机器的snmpd.conf(/etc/snmp/snmpd.conf)中加入disk / (比如我们监视根分区)然后可以用snmpwalk -v 1 -c public 192.168.0.52 dsktable这个命令来检查
2、如果图出不来
1.检查你的主机是不是活的,一定要能测试通过,状态是活的才行,可以用命令来检查是否有输出
2.另外Cacti中文版默认选择的rrdtool的版本是RRDTool 1.1.x 的!—-点击Console->System Utilities->Technical Support->RRDTool Version选择RRDTool 1.2.x,不然有可能出不了图.
3、网卡流量达到100M以上图像有问题?
这与snmp的版本有关,snmp1的数据是32位而snmp2c以上是64位(AS4默认是不支持64位的)。
1.首先要确定你使用的是snmp2c或以上,是否支持64位MIB库.如下如果返回的有几行含有“Counter64:”的话.那么表明是支持的。
- #snmpwalk -c public -v 2c localhost IF-MIB::ifHCInOctets
- IF-MIB::ifHCInOctets.1 = Counter64: 3174458
- IF-MIB::ifHCInOctets.2 = Counter64: 1585772167
- IF-MIB::ifHCInOctets.3 = Counter64: 35696997927
- IF-MIB::ifHCInOctets.4 = Counter64: 0
2.然后点击Cacti中文版的页面:“Console ->; Create New Graphs ->;Data Query”。你在下面看到“Select a graph type:”的下拉菜单(默认是“In/Out bits”),要取64bits的数据所以将其改为“In/Out bits(64-bit Counters)”,然后选择你要监测的网卡即可。另外,该监测点的“Maximum Value”必须设置为100M以上。
3.设备管理中,选择的主机中的SNMP版本,一定要是2.
二、RedHat AS4的(net-snmp5.2以下不支持)snmp不支持64位计数器的解决方法(本方法由嘻嘻哈哈提供 http://www.haw-haw.org/node/654)
可以下载一个src.rpm再在/usr/src/redhat/SPECS/net-snmp.spec文件的configure下加上一句–enable-mfd-rewrites \
然后再
#cd /usr/src/redhat/
#rpmbuild -bb SPECS/net-snmp.spec
生成一堆的x86_64.rpm在/usr/src/redhat/RPMS/x86_64下,如果是32位的就在i386下.在安装就行了.
注 :64位计数器是在net-snmp 5.2上新加入的IF-MIB ,它可以转换更多的 MIB 对象 (e.g. ifXTable with 64-bit ifHC* counters). 所有象RHEL4,Centosd4上,如果使用默认的5.2的src包,就算加入了enable-mfd-rewrites其实也是不行的.所以要下载5.2的src包来安装.
下载地址
net-snmp5.2.src.rpm这个包中默认就加入了enable-mfd-rewrites.下载后,直接用上面方法中的rpmbuild -bb SPECS/net-snmp.spec编译后安装就行.这个有时还得不到数据,要注意你的snmpd.conf是否配置对了.其中的如下,read选项要是全部.
access notConfigGroup "" any noauth exact all none none
如果不想编译,可以下载在这下载redhat4的rpm直接安装就行了
http://ftp.freshrpms.net/pub/freshrpms/redhat/testing/EL4/net-snmp/
【编辑推荐】