CentOS5と6のサーバをESXi5.5にP2Vしてみましたが、試行錯誤で時間がかかったので、後に続く人が多少でもマシなように記録しておきます。個別の話は、このメモからキーワード抜き出してググれば良いでしょう。
基本的な事柄
- LVMは基本パーティションに変換する必要がある
- カーネルパニックする
- ネットワーク設定は自前で直す
vCenter Converter Standalone client 5.5.0
管理者で起動する必要がある
変換設定(デフォルトと異なる部分)
- [DestinationLocation]仮想マシンのバージョンは8に
- [Options][Data to copy]AdvancedにしてDestination layoutでLVMを「To basic」で基本パーティションに変換する
- [Options][Helper VM network configuration]DHCP環境でなければ一時使用向けのIPアドレスを設定する
※bondingなどで複数NICの場合でも、NICは1枚だけ「auto」で付けておいて、後でそれに設定付けるのが良いと思う
CentOS5
変換前にパーティションを詰める
- LiveDVDでboot
- pvscanやlvscanでLVMの様子を確認
- 対象を、lvchange -ayでactiveにする
- resize2fsでファイルシステムのサイズを詰める
- lvreduceでLVMのサイズを詰める
変換後ESXi上で作業(変換だけだとカーネルパニックで動かなかった)
- vmxを直編集してSCSIの設定を捨ててHDDをIDEに変更 (SCSIだと動かないっぽい)
- CentOS-6.5-x86_64-minimal.isoでbootしてレスキューモードで起動
- chroot /mnt/sysimage
- vi /etc/fstab (例えばsdaをhdaな方向で修正)
- vi /boot/grub/grub.conf (ルートデバイスをsdb1をhdb1な方向で修正)
- mkinitrd /boot/initrd-*****.img ******* (initrdを作り直す)
※今、考えると、mkinitrdやってるのに、x86_64のレスキューモードで大丈夫だったのは何でだろう。手数少なく動かしたかったので、動いてありがたいのは確かだけど。カーネル入れ替えて不具合起きないか確認した方が良いなー
起動後、ネットワーク設定する
CentOS6
変換前
- CentOS5と同じようにパーティションを詰める
- 変換前にCentOS-6.5-x86_64-minimal.isoでbootするカーネルと同じやつ入れておく
変換後ESXi上で作業(変換だけだとカーネルパニックで動かなかった)
- CentOS-6.5-x86_64-minimal.isoでbootしてレスキューモードで起動
- chroot /mnt/sysimage
- dracut
※fstabとgrub.confの確認ぐらいはした方が良い
起動後、ネットワーク設定する
- 変換時に新しいNICが追加された状態になるので、/etc/udev/rules.d/70-persistent-net.rulesを直して、/etc/sysconfig/network-scripts/ifcfg-eth?を直して、ネットワークの再設定を行う
所感
分かってたら、1時間とかの作業だけど、試行錯誤で数日潰れる感じ。無償版とは言え商用プロダクトなわけで、こんなに地雷多くてどうなのとか思った。地雷回避のノウハウでお金取る生態系とかなのかなー。