xm save と restore

xm save と restore は簡単な操作で xen paravartial OS をフリーズさせてリストアする方法です。

mylx01:~ # xm create -c sles101am64pr

※まずはブートしてみましょう。

Using config file "/etc/xen/vm/sles101am64pr".
Warning: The bootentry option is deprecated. Use bootargs and pass --entry= directly.
Copy kernel /boot/vmlinuz-xen from hda2 to /var/lib/xen/tmp/vmlinuz.dtY2ma for booting
Started domain sles101am64pr
Bootdata ok (command line is TERM=xterm)
Linux version 2.6.16.21-0.8-xen (geeko@buildhost) (gcc version 4.1.0 (SUSE Linux)) #1 SMP Mon Jul 3 18:25:39 UTC 2006

※ブートの途中で CTRL + ] で XEN コンソールに戻します。

mylx01:~ # xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 1152 2 r----- 97216.1
W2K3S 17 512 1 -b---- 557.0
sles101am64pr 18 256 1 -b---- 3.4
mylx01:~ #

※ ID 18 に起動した準仮想OSがあります。

mylx01:~ # xm save 18 myimg.img

※ ここでセーブコマンドを実行してみます。

mylx01:~ # xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 1152 2 r----- 97228.6
W2K3S 17 512 1 -b---- 557.1

※ xm list からはリストアップされません。

mylx01:~ # ls -l myimg.img
-rwxr-xr-x 1 root root 267951548 2007-02-10 19:54 myimg.img

※ 256Mb のイメージが作成されています。メモリのダンプですね。


mylx01:~ # xm restore myimg.img

※ ここで restore コマンドを実行します。

mylx01:~ # xm list
Name ID Mem(MiB) VCPUs State Time(s)
Domain-0 0 1152 2 r----- 97243.6
W2K3S 17 512 1 ------ 557.3
sles101am64pr 19 256 1 r----- 3.7

※ xm list にアップされました。

mylx01:~ # xm console 19

※コンソールを上げてみます。ちゃんとブートが完了しています。

Welcome to SUSE Linux Enterprise Server 10 (x86_64) - Kernel 2.6.16.21-0.8-xen (tty1).


mylxam64 login: root
Password: *******
Last login: Wed Feb 7 18:11:43 JST 2007 on tty1
mylxam64:~ #
mylxam64:~ #
mylxam64:~ #
mylxam64:~ #

※ CTRL + ] で XEN カーネルに戻ります。

mylx01:~ #
mylx01:~ #

xm save と xm restore は簡単なコマンド操作で実行中のメモリの状態をダンプして、仮想OSをファイル化します。この状態で、メモリイメージと /var/lib/xen/image のディスクイメージファイル、それからスタートアップファイルを他のマシンにコピーすれば、(たぶん)他のマシンでも同じイメージを再稼動できるのでしょう。

ちなみに、このコマンドが使えるのは準仮想化( Para vertialization ) の状態で、完全仮想化( Full Virtiulization ) では使えません。
使えませんが、 SUSE Linux Enterprise (SLES) では移行のためのコマンドツールとして非常に強力です。

非番のエンジニア
by islandcenter | 2007-02-10 20:55 | XEN | Comments(0)