Wednesday, April 29, 2009

cacti的備份和轉移

參考網站:
步驟:
準備工作:大部份會有問題,是在做轉移的時候rra無法順利轉換。
確認rrdtool的版本是否一樣,不一樣的話要準備兩個scripts,用來解決ERROR: This RRD was created on other architecture的錯誤,在同一台機器上做升級或備份的動作,這個部份就不用做了。
rra2xml.sh:舊的rrd先轉成xml格式rrdtool dump $filename.rrd > $filename.rrd.xml "

#!/bin/bash

rrddump="/usr/bin/rrdtool dump"

xmldir=/path/to/dump/rraxml

sourcedir=/path/to/cacti/rra

#-mtime -30 changed in past 30 days

#for file in `find /path/to/cacti/rra/ -mtime -30 |awk -F\/ '{print $NF}'`

for file in `ls /path/to/cacti/rra/ |awk -F\/ '{print $NF}'`

do

${rrddump} ${sourcedir}/${file} > ${xmldir}/${file}.xml

done

xml2rra.sh:在新的主機上把xml轉回rrdrrdtool restore $filename.rrd.xml > $filename.rrd "

#!/bin/bash

rrdrestore="/usr/bin/rrdtool restore"

xmldir=/path/to/rraxml

destinationdir=/path/to/rra

#drop .xml and restore to rrd

#for file in `find ${xmldir} |awk -F\/ '{print $NF}' |sed s/.xml//g`

for file in `ls ${xmldir} |awk -F\/ '{print $NF}' |sed s/.xml//g`

do

${rrdrestore} ${xmldir}/${file}.xml ${destinationdir}/${file}

done

chown cactiDN:cactiDN ${destinationdir} -R

確認rrdtoolsnmpphpcacti的路徑。確認databasecacti資料庫和使用者是否已經建立。
複製舊版本/path/to/old-cacti/中的resource/plugins/scripts/rra/(其中rra/的部份,如果是在不同版本的rrdtool下,要先用rrdtool處理過),到新版本/path/to/new-cacti/底下。
修改資料夾的使用者權限。

No comments: