首先使用snmpwalk -v 1 localhost -c public测试snmp服务是否正常
Timeout: No Response from localhost
说明有问题
service snmpd status查看服务是否开启,关闭的话打开服务
服务开启之后还有timeout,查看vi /etc/snmp/snmpd.conf配置
在conf文件中添加下面两句见附一:
view all included .1
access notConfigGroup "" any noauth exact all none none
/usr/local/php/bin/php /usr/local/apache/htdocs/cacti/poller.php
/usr/bin/rrdtool fetch /usr/local/apache/htdocs/cacti/rra/localhost_load_1min_5.rrd AVERAGE
################################附一snmpd.conf文件########################################################
####
# First, map the community name "public" into a "security name"
# sec.name source community
com2sec notConfigUser default public #定义community名称为 public,映射到安全名 notConfigUser。
####
# Second, map the security name into a group name:
# groupName securityModel securityName
group notConfigGroup v1 notConfigUser #定义安全用户名notConfigUser映射到notConfigGroup组。
group notConfigGroup v2c notConfigUser
####
# Third, create a view for us to let the group have rights to: #定义一个view,来决定notConfigUser可以操作的范围。
# Make at least snmpwalk -v 1 localhost -c public system fast again. #定义可查看的snmp的范围。
# name incl/excl subtree mask(optional)
view systemview included .1.3.6.1.2.1.1
view systemview included .1.3.6.1.2.1.25.1.1
view all included .1
####
# Finally, grant the group read-only access to the systemview view. #给notConfigGroup组所定义view名 all 以只读权限。
# group context sec.model sec.level prefix read write notif
access notConfigGroup "" any noauth exact all none none
#access notConfigGroup "" any noauth exact mib2 none none
# -----------------------------------------------------------------------------
# Here is a commented out example configuration that allows less
# restrictive access.
##########################################附二标准的检查步骤#######################################
使用Cacti一段时间,NAN问题是最常见和最令人头痛不已的。还好http://docs.cacti.net/node/283上面有解决它的步骤,bugs.cacti.net上面也有很多。我是这么做的,最常用的就是第1个了:
1. Check Cacti Log File
检查Log文件,这可是最常用的一步了,文件在<path_cacti>/log/cacti.log,Host后面的数字可以在 Devices里面点SNMP Agent之后在URL的最后看到,常见的Log错误:
CACTID: Host[...] DS[....] WARNING: SNMP timeout detected [500 ms], ignoring host '........'
这个是说SNMP超时,可以更改Settings->Poller的时间来解决
CACTID: Poller [...] Host[...] WARNING: Recache Event Detected for Host
如果老出现的知,在System Utilities->Rebuild Poller Cache里面重建下 poller,或用 php rebuild_poller_cache.php 命令也一样
CACTID: Poller [...] Host[...] WARNING: Result from SNMP not valid. Partial Result: No Such Object avail
你的SNMP Agent不支持该类型的OID类型
2. Check Basic Data Gathering
这个好办,测试一下数据是否能够正常得到,SNMP Agent代理是否工作正常,OID是否能够或允许访问到,用SNMP命令
snmpwald -v 2c -c public target-host system
3. Check cacti's poller
用cmd.php来检查具体的SNMP Agent是否正常
php -q cmd.php <id> <id>
4. Check MySQL updating
这个我没有用过
5. Check rrd file updating
rrdtool update <filename> --template ...
6. Check rrd file ownership
这个简单,看各RRD文件的访问权限是否设置正确
7. Check rrd file numbers
用命令看看具体的RRD文件里面的数据是不是正常的,如果是NAN,返回上面具体检查
rrdtool fetch <rrd file> AVERAGE
8. Check rrdtool graph statement
打开Graph Management里面具体的SNMP Agent,并且打开Debug功能,具体看DEF的状态,它们指向具体的RRD文件
9. Miscellaneous
如果MySQL数据库里面记录的数据是否过大,如果过大可以Cacti里面的Memory setting,默认是8M.
10. RPM Installation?
看看RPM是否安装完整
11. Not NaN, but 0 (zero) values?
cacti无法显示数据解决方法
最新推荐文章于 2021-03-10 11:49:33 发布