2014年12月10日水曜日

VMwareESXiで動作しているCentOS5.5をHyper-Vへ移行する

いろいろ試していましたが、いくつか問題がありましたが下記の手順でようやく動作させることが出来ました。

・HDDの統合
使用していたCentOSはsda1、sdb2の2つのHDDが使用されていました。まずはファイルを1つにするためパーテーションを変更しました。
事前にVMware側で、ハードディスク1(sda1)の領域を拡張します。この時スナップショット等があると拡張できません。削除しておきます。

Gparted プロジェクト日本語トップページ - SourceForge.JP

上記ツールを使用し、sdb2の内容を全てsda1にコピーします。この時元々ある先頭のsda1の部分は変更しないようにします。

・grub.conf,fstabの修正
このまま一度起動し、grub.confとfstabを修正します。
grub.confで/dev/sdb1=>/dev/sda2
fstabで/dev/sdb1=>/dev/sda2

起動を確認したら、sdb2を取り外します。(設定のみ。間違えたら戻すので、イメージは削除しない)

・VMDK形式のデータExport
VMware vCenter Converter Standalone Clientを使用し、イメージを取り出します。VMwareWorkstation形式にすることで、PC等に保管できます。

・VMDK形式かVHDへの変換

StarWind V2V Converter

今回はこちらのツールを使用しました。対象のVMDKファイルを指定するだけでOKです。尚ダウンロードするためには登録が必要になります。

・Hype-VServerへ
変換されたVHD形式のファイルをHyper-Vで使用する領域に保管し、新規でVMを作成します。この時既存のイメージを指定し、変換されたVHDファイルを指定します。

・仕上げ
起動すると何故がPanicとなります。実はHyper-V(2008R2)はsd(SCSI)からの起動をサポートしていないそうで、内部のHDDの取り扱いがhdaに変更されます。(StarWind V2V Converterのおかげ?)

再度下記の変更が必要になります。
grub.confで/dev/sda2=>/dev/hda2
fstabで/dev/sda2=>/dev/hda2

実はここがもっともはまったポイントです。VMが起動しない状態なので。

・変更手順(私がやった手順)
grubの画面で何かキーを押し、起動を停止。aコマンドで起動オプションを変更します。
/dev/sda2=>/dev/hda2 このように書き換えで起動します。
そのまま起動すると、今度は/dev/sda2が見当たらない的なメッセージが表示されるため、rootのパスワードを入力し、fstabを編集します。この時fstabがreadonlyで変更できない場合は以下のコマンドを入力します。

mount -o remount /

viで編集し保管します。dfコマンドやfdisk -l コマンドでHDDのパーテーションを確認し、grub.confもここで修正します。終わりましたらrebootしてみます。

今回の手順は私の対応した環境にしか対応しないかもしれませんが、私自身が忘れないように記述しておきます。会社での作業の為、スクリーンショット等を撮る余裕がなく文字だけの手順になってしまっています。

0 件のコメント:

コメントを投稿