このエントリーをはてなブックマークに追加

VMwareからKVMへV2V変換

KVM

概要

既存VMwareサーバーからKVMサーバーへのV2V変換の手順です。

Linux VMware 仮想マシンのKVMサーバーへの移行手順

移行前準備

事前に移行対象サーバーのアーキテクチャを確認しておくこと。
# uname -a      <=initrdを作成する際に必要

VMwareサーバー上での作業(vmdkファイルが分割されている場合に、統合する手順)

# vmware-vdiskmanager -r 分割された仮想ディスクファイル.vmdk -t 0 結合後の仮想ディスクファイル.vmdk
# scp *****.vmdk  user01@KVMサーバー:/tmp/
# scp *****.vmx user01@KVMサーバー:/tmp/


KVMサーバー上での作業

表示名を変更
# vi hogehoge.vmx
scsi0:0.fileName = "TEST01_v2v.vmdk"  <=統合したVMDK名にする。 
displayName = "TEST01-182.116" <=表示させる名前に変更する。
# virt-convert -i vmx -o virt-image -D raw ******.vmx 仮想マシン名.xml <---変換時にVMDKファイルが同じディレクトリある必要がある。
# mv TEST01.raw TEST01.img	<--いらない?
# mv TEST01.img /gl1/
# virt-install --name VMimagename --ram 4096 --disk virt-image.raw,cache=writeback --cdrom CentOS-5.8-i386-bin-DVD-1of2.iso --vnc --keymap=ja --accelerate --os-variant=rhel5.4 --vcpus=4 --network=bridge:br0 --network=bridge:br1
# virsh vncdisplay TEST01
VNCで接続
linux rescue ブート
$ chroot /mnt/sysimage
# /boot/grub/device.map の/dev/sda を/dev/vdaに変更 ※CentOS5系の場合
(hd0) /dev/sda
↓
(hd0) /dev/vda

# /etc/modprobe.conf のmpt* 行を削除、virtio_blk virtio_pci を追加 ※CentOS5系の場合
# mkinitrd -v -f /boot/initrd-2.6.18-308.8.1.el5PAE.img 2.6.18-308.8.1.el5PAE
exit
exit
リブート
再起動後 、CentOSログイン画面が出ればOK。その後ネットワークの設定を行う。
# vi /etc/udev/rules.d/70-prsistant-net.rules
コメント以降全部削除
# vi /etc/sysconfig/network-scripts/ifcfg-eth0
HWADDR ==> コメントアウト
NM_CONTROLLED ==> コメントアウト
# reboot