XenServerのバックアップする方法を探してみた。
こんなところにスクリプトがあったが、仮想マシンを全てバックアップしてくれるらしい。
http://community.citrix.com/display/xs/0+downtime+snapshot+based+XENServer+5.5+backup+script.
ただし、私は、マシン毎に実行したかったので、以下を実行した。
動作要件
XenServer 5.5
NFSあるいは、ローカルのストレージ領域
実行方法
カレントディレクトリをバックアップ先にしてから
# xe vm-snapshot vm=ゲスト名 new-name-label=backup_vm
snapshotのUUIDが表示される
# xe template-param-set is-a-template=false uuid=SnapshotのUUID
# xe vm-export uuid=SnapshotのUUID filename=出力ファイル名
# xe vm-uninstall uuid=SnapshotのUUID force=true
どうやら利用している容量だけバックアップされているようだ。
(イメージサイズが8GBでも利用量が少ない場合、実利用量のサイズになる。)
Snapshotのuuidは、xe template-list で確認できるみたい。
ちなみにリストアは、
# xe vm-import filename=インポートするファイル名 sr-uuid=リストアするSRのUUID
さらWindows VMで、xentoolsに含まれるinstall-XenProvider.cmdを実行して、
ホスト側でxe vm-snapshot-with-quiesceを実行するとゲスト側でVSSが動作するらしい。
つまり、SQLやExchangeを止めなくても一括バックアップできるということ??
ゲストOS上でinstall-XenProvider.cmdを実行して再起動、そして、ホスト上でxe vm-snapshotの代わりにxe vm-snapshot-with-quiesceを実行をしたところ(他は上記と一緒)、何とxenのvssproviderが起動しました。まだ、深く試していないけど、SQLをとめたりする必要がない。すばらしい。