LoginSignup
8
7

More than 5 years have passed since last update.

Hyper-V上のLinux仮想マシンをVMware ESXiへ移行する手順 - Migrate Linux virtual machine on Hyper-V to VMware ESXi

Last updated at Posted at 2016-06-24

概要

Hyper-V上で動いているLinux仮想マシン(OSはCentOS 5.8)をVMware ESXi 5へ移行しました。

移行するやり方は2通りあります。

今回は後者でやりました。

手順

ステップ1 仮想ディスクvhdxをvmdkへ変換する

Hyper-Vサーバ上にはある仮想ディスクを変換します。

変換にはStarWindのV2V Converterを使いました。

下記からダウンロードできます。
https://www.starwindsoftware.com/converter

変換先としてVMware pre-allocated imageを選択しました。

v2v1.PNG

ほんとうはthickディスクじゃなくてthinディスクにしたいのですが、なぜかESXiで読み込めませんでした。後でもう一度thinに変換することにします。

ステップ2 VMware仮想マシンを作成

VMware ESXi上で仮想マシンを作成します。
このとき仮想ディスクは作らないようにします。

ステップ3 変換した仮想ディスクvmdkをアップロード

変換した仮想ディスクをVMware ESXiからアクセスできる場所へアップロードします。

ステップ4 仮想マシンへ仮想ディスクを追加

ステップ2で作成した仮想マシンに、ステップ3でアップロードした仮想ディスクを追加します。

SCSIコントローラは、CentOS 5なので LSI Logic SASを選びました。
より新しいOSであれば、VMware paravirtualのほうがよいです。

ステップ5 仮想マシンをLive DVDを使って起動

rootファイルシステムが見えなくて起動しないので、いったんLive DVDで起動します。

自分はCentOS 7のDVDを使いました。

ステップ6 /etc/modprobe.confを書き換えて、initrdを再作成

既存CentOSが/mnt/sysimageにマウントされているはずなので、その中にある/etc/modprobe.confを書き換えます。

vi /mnt/sysimage/etc/modprobe.conf

書き換え内容は、scsi_controllerを含む行です。

/mnt/sysimage/etc/modprobe.conf
alias scsi_hostadapter mptbase
alias scsi_hostadapter1 mptscsih
alias scsi_hostadapter2 mptfc
alias scsi_hostadapter3 mptspi
alias scsi_hostadapter4 mptsas

CentOS wikiにある手順に従って、initrdを再作成していきます。

必要なものをマウントして、chrootします。

mount --bind /proc /mnt/sysimage/proc
mount --bind /dev /mnt/sysimage/dev
mount --bind /sys /mnt/sysimage/sys
chroot /mnt/sysimage

initrdを作成します。wikiにある手順では、カーネルバージョン部分はuname -rで取得していました。今回は異なるバージョンのLive DVDを使っているので手書きしました。

cd /boot
cp initrd-2.6.18-308.el5PAE.img initrd-2.6.18-308.el5PAE.img.bak
mkinitrd -f -v /boot/initrd-2.6.18-308.el5PAE.img 2.6.18-308.el5PAE

再起動します。

exit
reboot

ステップ7 Linux Integrationをアンインストール

無事起動したら、Hyper-VのLinux Integrationをアンインストールします。

ステップ8 VMware Toolsをインストール

いつもの手順でVMware Toolsをインストールします。

以上です。お疲れ様でした。 :smile:

落穂ひろい: thick仮想ディスクをthinにする

ESXiホストマシンへsshでログインして、vmkfstoolsを使います。

vmkfstools -i original.vmdk new.vmdk -d 'thin'

ls -lで見える数字は仮想ディスク全体のサイズなので、-sを付けると実サイズが見えます。

こういう作業は、sshしてするよりvSphere PowerCLI使ったほうがよさげです。

8
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8
7