Help us understand the problem. What is going on with this article?

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

More than 3 years have passed since last update.

概要

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使ったほうがよさげです。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした