VMware社がBroadcom社に買収された影響で、今後vSphere製品については全てサブスクリプション契約が必要となるようなので、Windows VMをVMware ESXiからProxmox VEに移行する手順を解説していました。
今回は、Windows VMに引き続きLinux VM(Debian)の移行方法を解説します。
本記事では上記記事の「事前準備」が完了している前提で解説しています。
まだOVF Toolの導入やProxmox VEにSMB共有を追加していない場合は、上記記事を参考に設定してください。
仮想マシンをVMware ESXiからエクスポートする
本記事では、VMware ESXiサーバのIPアドレスを10.0.20.126、移行する仮想マシンの名前を「debian-static」として解説しています。
また、Proxmox VEに「shokaku」という名前のSMB共有が追加されており、「/mnt/pve/shokaku/esxi-to-pve」ディレクトリが作成されており、cdコマンドで「「/mnt/pve/shokaku/esxi-to-pve」ディレクトリ」に移動していることを前提としています。
下記コマンドを入力してEnterキーを押し、仮想マシンをエクスポートします。
/root/ovftool/ovftool vi://10.0.20.126/debian-static ./
「Username:」と表示されるので、「root」と入力してEnterキーを押します。
「Password:」と表示されるので、VMware ESXiのrootアカウントのパスワードを入力し、Enterキーを押します。
(パスワードを入力しても画面には何も表示されません。)
しばらくすると「Completed successfully」と表示され、仮想マシンのエクスポートが完了します。
Proxmox VEに仮想マシンをインポートする
本記事では、下記の設定値で実行しています。それぞれお手持ちの環境に合わせて読み替えてください。
qm importovf <仮想マシンID> <OVFテンプレートの場所> <ディスクイメージの保存先> –format qcow2
項目 | 値 | 備考 |
仮想マシンID | 107 | Proxmox VE上で管理する際のIDです。 既存のVMと被らない値を指定します。 |
OVFテンプレートの場所 | debian-static/debian-static.ovf | OVF Toolを使うと、保存先に仮想マシン名の ディレクトリが作成され、その中に必要ファイルが保存されます。 なので、仮想マシン名/仮想マシン名.ovfを指定します。 |
ディスクイメージの保存先 | local-lvm | Proxmox VE上に作成したLVM名を指定します。 デフォルトはlocal-lvmなので、Proxmox VEサーバに ストレージが1本しか無い場合はデフォルト値を指定します。 |
続いて下記コマンドを入力してEnterキーを押し、仮想マシンをインポートします。
qm importovf 107 debian-static/debian-static.ovf local-lvm --format qcow2
しばらくするとプロンプトが返ってきます。これでSSHでの操作は完了です。
Proxmox VE側の設定
Proxmox VEの管理画面から、「107 (debian-static)」をクリックし、右ペインの「Hardware」→「Add」→「Network Device」をクリックします。
「Add: Network Device」画面が表示されるので、「Model:」を「VMware vmxnet3」に指定して「Add」をクリックします。
続いて「SCSI Controller」をクリックして選択し、「Edit」をクリックします。
「Edit: SCSI Controller Type」画面が表示されるので、「VMware PVSCSI」を指定して「OK」をクリックします。
続いて「Options」→「OS Type」をクリックして選択し、「Edit」をクリックします。
「Edit: OS Type」画面が表示されるので、「Type:」を「Linux」、「Version:」を「6.x – 2.6 Kernel」に指定して「OK」をクリックします。
続いて「Console」→「Start Now」の順にクリックして仮想マシンを起動します。
正常にOSがブーとしてくることを確認します。
今回の移行対象は事前に固定IPを設定していましたが、Windowsと違ってLinuxについてはIPアドレスの再設定は不要です。
QEMU Guest Agentのインストール
続いてQEMU Guest Agentをインストールするため、Terminalを立ち上げて下記コマンドを入力し、Enterキーを押します。
sudo apt install qemu-guest-agent
sudoで実行しているのでログインしているユーザのパスワードを入力し、Enterキーを押します。
「Do you want to continue? [Y/n]」と表示されるので、「y」を入力してEnterキーを押します。
インストールが完了したら、下記コマンドを入力してEnterキーを押し、OS起動時にQEMU Guest Agentサービスが起動するよう設定します。
sudo systemctl enable qemu-guest-agent
続いていったん「sudo init 0」コマンドを実行して仮想マシンをシャットダウンします。
「Options」→「QEMU Guest Agent」の順にクリックして選択し、「Edit」をクリックします。
「Use QEMU Guest Agent」と「Run guest-trim after a disk move or VM migration」にチェックを入れて「OK」をクリックします。
「Console」→「Start Now」の順にクリックして仮想マシンを起動します。
OSログイン後、再度Terminalを起動して下記コマンドを入力し、Enterキーを押します。
sudo systemctl status qemu-guest-agent
sudoで実行しているので、ログインしているユーザのパスワードを入力し、Enterキーを押します。
「Active: active [running]」と表示されていることを確認し、「q」キーを入力した後Terminalを終了します。
これで移行完了です。