libvirt で管理されてるホストのリストア調査 (2)

libvirt で管理されてるホストのリストア調査の続き。
エントリは途中で力尽きているのですが、実機確認してみたところでは手順としてリストア時にはバックアップ元の仮想ホストは undefine しないと駄目な事まで確認している事が判明。

纏め

以下、なんとなくですが。

バックアップ

以下で取得できます。

DATE=`date +%Y%m%d`
HOGE=hoge
virsh suspend $HOGE
cp /var/lib/libvirt/images/$HOGE.img /backup/$HOGE.$DATE.img
cp /etc/libbirt/qemu/$HOGE.xml /backup/$HOGE.$DATE.xml
virsh resume $HOGE

ただし、上記は一つの仮想ホストに一つのディスクイメージが mount されているのが前提。そうでない場合は以下のスクリプトが参考になります。

リストア

色々方法はあるようです。が、基本的にバックアップ元の仮想ホストの定義情報が残っていると動作が微妙な事が確認できています。ので、以下な方法で定義情報もろとも削除した方が良いようです。

HOGE=hoge
virsh destroy $HOGE
virsh undefine $HOGE

その後、おもむろにバックアップされているデータを所定の位置に投入して設定などを確認した後に仮想ホストの定義情報を登録すれば OK な模様。

HOGE=hoge
cp /backup/$HOGE.20130619.img /var/lib/libvirt/images/$HOGE.img
cp /backup/$HOGE.20130619.img /etc/libvirt/qemu/$HOGE.xml
virsh define /etc/libvirt/qemu/$HOGE.xml

リストアについても一応動作確認済みです。

コンソール接続できん

とりあえず一旦 kvm で直接ディスクイメージをアレして /etc/default/grub

#GRUB_TERMINAL=serial

なコメントアウトなエントリを有効にして再度 virsh define してみました。うーん、某所では問題なく接続できるんですが、これは一体どーゆー事なのだろうか。
再度 kvm から update-grub もしてみましたが駄目。virsh create でも駄目だな。むむむ袋小路だorz