公司现有cacti监控服务器IO负载大,访问慢或者出图断断续续的,本来想搞分布式监控的,在网上也找了些资料,都是转载的,而且没配图,受智商问题,没看懂他们的文章;之前有做过把cacti 所有数据迁移到其他服务器,当时也是不出图,失败告终;那次是领导催,压力巨大。。可惜没成功;最近几天监控又不行了,自己又不忙,想尝试把数据库迁走,好减轻服务器压力,这次是偷偷弄。。。。
估计大家cacti 图形文件和数据库都在一台服务器上,反正我们是这种情况;
第一步:备份数据库,导入新服务器;
mysql -uroot --password=cactiuser cacti</root/cacti-backup.sql
第二步:创建新库,并且导入数据;
create database cacti default character set utf8; 创建数据库 grant all privileges on cacti.* to cactiuser@192.168.6.2 identified by ‘cactiuser‘; 授权访问,新服务器Ip192.168.6.2 source /root/cacti-backup.sql; flush privileges; exit
第三步:修改cacti配置文件
(1)修改/var/www/html/include/config.php 中数据库帐号,密码,ip
这时已经可以访问cacti监控,现象是图不更新了,打开实时图形可以看到流量,debug模式显示OK,问题很奇怪;问技术群,有朋友提供了思路,但真心不知道怎么搞;
第四步:修改/var/www/html/include/global.php
好吧,我根据他这思路,继续查看配置,突然发现/var/www/html/include/global.php 也要配置数据库信息,修改后还是不行。。。。陷入僵局了。。。 完全没辙了;
然后尝试添加新主机,都可以正常监控,但就不出图,debug模式显示rrd图形文件不存在,都可以添加主机插入和查询数据库了,权限没修改,尽然不能创建文件,这不蛋疼嘛!!!!图形文件不是用rrdtool工具生成嘛,查看尽然是c程序;
第五步:修改/etc/spine.conf
又在群蛋了会,仔细翻cacti官方电子书,发现在配置新cacti服务器,需要安装spine 软件,在旧服务器上查看配置,发现也需要配置数据库信息,修改后,之前新添加的主机图形文件出来了,但没画图;执行spine程序发现有提示时间错误日志,同步新服务器时间,服务器正常画图,这算是把数据库迁移完了;
自己重新对比修改文件前后的故障现象,发现config.php 用来显示之前添加的主机信息;global.php在新添加主机通过snmp尝试获取远程信息,如果数据库信息错误,添加新主机会出现snmp获取错误;spine.conf 用来提供创建rrd图形需要的信息,不然没法创建rrd文件;
本文出自 “立成为网络安全工程师” 博客,请务必保留此出处http://luyafei.blog.51cto.com/1092421/1378045