KVMからESXiへのインスタンスマイグレーション
目次
以前までKVMメインで仮想マシンを立てていたのですが、ESXiへ移行するためにマイグレーションを行いました。
けっこうハマる部分が多かったので、手順を記録しておきます。
今回移行を行ったホストはCentOS7だったのですが、特有の手順があるかもしれません。
移行元: KVM on CentOS7
移行先: VMware vSphere Hypervisor 6.5(無償版)
KVMハイパーバイザでイメージファイルの変換
### qemu-imgのインストール % sudo yum install qemu-img ### vmdk形式への変換 % sudo qemu-img convert -f qcow2 /var/lib/libvirt/images/centos.img -O vmdk centos.tmp.vmdk -o compat6
ESXiホスト側での変換
先ほど作成した centos.tmp.vmdk
をESXiホストへコピーしておきます。(/vmfs/volumes/datastore1/centos.tmp.vmdk
)
$ mkdir /vmfs/volumes/datastore1/centos $ vmkfstools -i /vmfs/volumes/datastore1/centos.tmp.vmdk -d thin /vmfs/volumes/datastore1/centos/centos.vmdk $ rm /vmfs/volumes/datastore1/centos.tmp.vmdk ### ddb.adapterType = "idle" -> ddb.adapterType = "lsilogic" $ vi /vmfs/volumes/datastore1/centos/centos.vmdk - ddb.adapterType = "idle" + ddb.adapterType = "lsilogic"
ESXi上でホストの起動
通常のインスタンス起動と同じ手順で
デフォルトで作成されるストレージを削除して
"Existing hard disk" より、datastore1/centos/centos.vmdk
を選択すればインポートできます。
デバイス設定のリセット
使用するデバイスが元環境と異なるせいか、このままではOSが起動してこないので、レスキューモードでカーネルの再作成を行います。
CentOS7のインストールディスクをアタッチする
起動後、"Troubleshooting" を選択
### OS上での操作へ移行 $ chroot /mnt/sysimage /bin/bash ### カーネルの再作成 $ dracut --regenerate-all --force