Linux下的Cacti网络管理系统安装常见问题(二)

无法正常显示图片,Cacti目录下的rra为空


一,snmp和网络是否正常

    通过在cacti服务器上运行snmpwalk -c public -v2c ip,能够正常返回数据,排除snmp和网络的问题。

二,查看cacti全局参数设置

    经查看cacti全局参数设置中的路径,采集器等均没有问题。

三,检查cacti服务器上rra和log的目录权限

    查看rra和log目录属主均是web程序运行用户,有对rra和log目录的读写权限,没有问题。进入rra目录,发现所有图像文件的修改日期均是前几天的,也就是说最近都没有获取到数据,更新到rra文件;进入log目录,发现cacti.log文件达到2G,log不记录东西了,mv cacti.log cacti.log.old,重新生成cacti.log,故障依旧。

四,检查cacti.log

    snmp能够获取到数据,rra和log权限也均没有问题,为什么还不能获取到数据呢?

    开启cacti全局设置中的详细日志,tail -f cacti.log查看日志,发现有很多类似日志:

    WARNING: Result from CMD not valid.  Partial Result:

    这是cacti采集器没有获取到相关主机的返回数据。同时发现有如下日志:

    Maximum runtime of 292 seconds exceeded. Exiting.

    是说在一个循环周期内(5min),cacti没有获取完所有的数据,自动退出,执行下一循环,

    应该是有太多主机了,同时有很多主机无法连接上超时,导致最终采集器时间超过292s自动退出。

    决定采用cactid来代替cmd.php采集,同时清理数据库中poller_item中的无效,无法连接上,配置错误的记录(重要,可根据cacti.log中得知哪些主机或记录有问题)。

五,配置cactid

    新版的叫spine。安装配置cactid:

    tar -zxvf cacti-cactid-0.8.6j.tar.gz

    cd cacti-cactid-0.8.6j

    ./configure (mysql另外安装的需要指安mysql路径)

    make

    mkdir /usr/local/cactid

    cp cactid cactid.conf /usr/local/cactid/

    vi /usr/local/cactid/cactid.conf修改为相应的数据库的用户名和密码。

    全局配置中设置采集器为cactid,并设置好cactid的路径:/usr/local/cactid/cactid

    能够正常获取到数据了,查看cacti.log:

    02/12/2011 11:31:03 AM – CACTID: Poller[0] Time: 55.2049 s, Threads: 1, Hosts: 25

    …

    02/12/2011 11:32:04 AM – CACTID: Poller[0] Time: 113.7014 s, Threads: 1, Hosts: 25

    二分钟即能获取到所有的主机数据了,效率提升不少。故障解决。

六,如以上还不能解决故障,可通过手动运行:php /var/www/html/cacti/poller.php 查看输出来找到问题所在。

原文地址:https://www.cnblogs.com/jerryxing/p/2520580.html