VMware ESXi to KVM
http://www.techno-st.net/wiki/VMware_ESXi_to_KVM
VMware ESXi の仮想マシンをそのまま KVM に移植しようというお話。
環境は Debian lenny でのおはなし。
Convert vmdk to qcow2
VMare ESXi の vmdk ディスクイメージは、vSphere から [構成] -> [ストレージ] -> データストアの参照 から、他のマシンにダウンロードする事ができる。
hogehoge.vmdk をダウンロードすると、hogehoge.vmdk と hogehoge-flat.vmdk ができてるはずなので -flat の方を使う。
$ qemu-img convert hogehoge-flat.vmdk -O qcow2 hogehoge.img
boot
VMware ESXi では、ディスクイメージは SCSI としてマウントされる。つまり /dev/sda のような感じ。
KVM では -hda hogehoge.img でイメージを指定するために、/dev/hda にマウントされる。
grub が root=/dev/sda1 のオプションを指定しているので、うまく起動しない。
WARNING bootdevice may be renamed. とか言われるはずである。
応急措置として SCSI でイメージを読み込んで起動した後、grub の menu.lst を書き換える。
$ kvm -drive file=hogehoge.img,if=scsi,boot=on -m xxx
ゲストが立ち上がったら、以下のように書き換える
-
-
- /boot/grub/menu.lst
-
- kernel /boot/vmlinuz-2.6.26-2-686 root=/dev/sda1 ro quiet
- kernel /boot/vmlinuz-2.6.26-2-686 root=/dev/hda1 ro quiet
その後、再起動すると -hda でイメージを指定しても動作するはず
$ kvm -hda hogehoge.img -m xxx