[流程]
备份Cacti
(1)cacti文件的备份
这个简单就是备份cacti文件的目录(除rra目录外)
(2)mysql
备份
mysqldump -p cacti >/tmp/cacti.sql.20090823
(3)备份rra目录
dumprrd.sh
#!/bin/sh
rrddump="/usr/local/bin/rrdtool
dump"
xmldir="/tmp/mysqlbackup/rraxml"
xmlbackup="/tmp/mysqlbackup/rrabak"
mysqlbackupDIR="/tmp/mysqlbackup"
eMailFile=$mysqlbackupDIR/email.txt
rrdpath="/usr/local/share/cacti/rra/"
DATE=`date
+"%y-%m-%d"`
if [ ! -e ${xmldir} ];then
mkdir ${xmldir}
fi
if
[ ! -e ${xmlbackup} ];then
mkdir ${xmlbackup}
fi
echo
"" >$eMailFile
echo $(date +"%y-%m-%d %H:%M:%S") >>
$eMailFile
#create rra => xml
for file in `find
/usr/local/share/cacti/rra/ -mtime -2 | awk -F\/ '{print $NF}'`
do
${rrddump} ${rrdpath}${file} > ${xmldir}/${file}.xml
done
if
[ `ls /tmp/mysqlbackup/rraxml/|wc -l` -ge 2 ];then
#tar backup
cd ${mysqlbackupDIR}
tar czvf ${xmldir}.${DATE}.tar.gz rraxml
>/dev/null 2>&1
mv ${xmldir}.${DATE}.tar.gz ${xmlbackup}
#delete
file&dir
if [ $? -eq 0 ];then
echo
"rraxml.${DATE}.tar.gz Backup Success!">> $eMailFile
rm
-fdr ${xmldir}
mkdir ${xmldir}
/usr/bin/find
${mysqlbackupDIR}/rrabak -type f -ctime +2 | /usr/bin/xargs /bin/rm
>/dev/null 2>&1
echo "Rra Backup is ok!" >>
$eMailFile
fi
else
echo "Rra Backup is fail!" >>
$eMailFile
fi
/soft/mail.pl "Cacti Backup of rra backup!"
恢
复cacti
(1)安装cacti环境
这个不在话下,安装freebsd(为什么我选择它呢,因为,我觉得安装cacti很方便,哈哈。
所以就选择这款操作系统了。)注意,
rrdtool的版本一定要高与或者等同与你原先备份的版本.所以,我需要升级ports,在升级ports
前,我先把系统升级下。
升级freebsd
freebsd-update fetch install
重启
升级
ports
portsnap fetch extract
重启
[后期更新ports
portsnap fetch
update ]
过后,安装便可以参考
http://5ydycm.blog.51cto.com/115934/113305
在
这里添加下,安装spine和monitor插件(注意,如果你原先没有monitor插件看这个,如果有的话,就没必要安装了,因为你已经备份了文件与
数据库,就基本上支持了这个插件安装环境了)
spine安装
whereis cacti-spine
cd
/usr/ports/net-mgmt/cacti-spine
make install clean
monitor插件的安
装,需要先安装cacti-plugin-arch
从下载,过后解压
将其cacti-
plugin-xxxxxx.diff 复制到cacti安装目录下,并且在其cacti安装目录下执行
patch -p1 -N <
cacti-plugin-xxxxxx.diff
完了吗?没有,还有一步啊,
mysql cacti <
pa.sql(需要操作)
<后期
到User Managemant=》admin下把Plugin Management选中
过
后,就可以在cacti安装目录下的include/global.php
添加$plugins[] = 'monitor';
好了。环
境基本ok了。>
(2)恢复cacti文件
简单,上传到网站目录下,如/usr/local/share/cacti
(3)
恢复mysql的cacti数据库
mysql cacti GRANT ALL ON
cacti.* TO cactiuser@localhost IDENTIFIED BY
'somepassword';(自己修改匹配你原来的用户)
flush privileges;
(4)恢复rra
restorerra.sh
#!/bin/sh
rrdrestore="/usr/local/bin/rrdtool
restore"
xmldir=/tmp/rraxml/
for file in `find ${xmldir} | awk
-F\/ '{print $NF}' | sed s/.xml//g`
do
echo $file
${rrdrestore} ${xmldir}${file}.xml /usr/local/share/cacti/rra/${file}
done
chown -R cacti:cacti /usr/local/share/cacti/rra
OK,再给log
授权。在这里提醒大家注意,权限的问题,不过,这些小的细节大家只要多注意事项观察日志都应该能解决掉的。
好了,到此为止,我已经将公司
的监控服务器恢复好了,现在观察,运行不错。700台,9000个监控元素,只跑了60s,不错。大功告成,闪了。
阅读(612) | 评论(0) | 转发(0) |