たけまるの日記

たけまるの日記です。web関係の技術ネタが多いですが、好きなことを適当に書いています。

XenServer3.2の仮想マシンをXenServer5.6に移す

XenServer3.2(XenExpress)で運用していた仮想マシンがいくつかありまして、流石に古すぎるのでXenServer5.6の上に仮想マシンを載せ変えました。
その作業記録です。

1.NFSサーバーを用意する
仮想マシンのエクスポートしたファイル置き場用。NFSサーバー自体の構築方法は他に譲ります。
エクスポートのファイルさえ置く容量があれば、SMBだろうが外付けHDDだろうが何でもいいと思います。


2.XenServer3.2のコンソールからVMをエクスポートする

2-1.XenServer3.2のコンソールからNFSをmountする
# mount -t nfs NFS-SERVER-IP:/mnt /mnt


2-2.該当仮想マシンのUUID取得
# xe host-vm-list

NAME: vm1
uuid: 55efe616-cf0d-4aff-8385-43510a2fXXXX
state: DOWN

2-3.エクスポート実行
# xe vm-export -h localhost -u root -pw PASSWORD vm-id=55efe616-cf0d-4aff-8385-43510a2fXXXX dif-name=/mnt/vmbackup

※コンピュータやネットワークの環境によると思いますが、数十分かかります

XenServer5系ではvm-exportすると、xva形式の単一のファイルが出来上がりますが、3系では1つのディレクトリができてその中にファイルが色々作られるようです。
xeコマンドも5系とは色々違っていて、試行錯誤でした。


3.XenServer5.6のコンソールでVMをエクスポートする

3-1.NFSサーバーをマウント
# mount -t nfs NFS-SERVER-IP:/mnt /mnt

3-2.インポート実行
# xe vm-import filename=/mnt/vmbackup/ova.xml sr-uuid=b1297b43-cddf-4795-a7a1-290898a3XXXX

※これも数十分かかります

インポート時に指定したディレクトリの中に、ova.xmlというファイルが作成されるのでこれを指定します。
sr-uuidは指定しなくてもいけますが、その場合はどこのSR(ローカルディスク?NFSiSCSI?)に仮想マシンが構築されるか明確ではないので、SRのUUIDを指定するといいです。
SRのUUIDはXenCenterで確認できます。


これで特に問題なく移行先のマシンで仮想マシンが起動しました。
あとはネットワーク周りの設定を整えて完了。