Proxmox VE の VMware ESXi インポートウィザードを使ってみました


## TL;DR

- PVE 8.1-8 で追加された ESXi インポートウィザードを使ってみた。
- やってみたので手順やTipsまとめ。

## 概要

ESXiからのインポートはCLIからできたのですが、GUIからもできるウィザード（Import Wizard for Migrating VMware ESXi Based Virtual Machines）が追加されました！
No-サブスクリポジトリに来ていたので、早速使ってみました！


https://forum.proxmox.com/threads/new-import-wizard-available-for-migrating-vmware-esxi-based-virtual-machines.144023/



## 要件など
- PVEバージョン
  - 8.1.8以降
- リポジトリ
  - test
  - No-Subscription
  - ※Enterpriseリポジトリはまだ。
- ESXi API を利用


## 手順
### No-サブスクリポジトリの設定とアップデート
現在公開されているISOイメージからインストールするとPVEのバージョンは8.1.2なので、リポジトリの設定をしてアップデートを行い、8.1.8以降のバージョンにします。


`pve`-`リポジトリ`-`追加`からリポジトリを追加します。
※デフォルトだとEnterpriseリポジトリに設定されているので、併せて無効にします。

![スクリーンショット 2024-04-20 042514.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/e2b701b0-c4b4-013e-2f45-dc110b1572ea.png)



![スクリーンショット 2024-04-20 042353.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/8ab8fde1-d5f0-eaf7-b7d2-878aa71f9a15.png)


`pve`-`アップデート`-`再表示`（内部的に`apt-get update`）
`pve`-`アップデート`-`アップグレード`（内部的に`apt-get dist-upgrade`）
を実行後、PVEノードを再起動し、アップデートを反映させます。

![スクリーンショット 2024-04-20 042614.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/9a1ba0c8-5850-a4c6-c5c7-b3c08fd445cf.png)



### ESXiとの接続

`データセンター`-`ストレージ`-`追加`-`ESXi`

![スクリーンショット 2024-04-20 043503.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/6db9035d-b411-d3cf-9099-e0693179aec3.png)

設定項目は以下の通り。

| 項目                        | 説明                                 |
|---------------------------|------------------------------------|
| ID                        | ストレージのID                          |
| サーバ                       | vSphere のIPアドレス/ホスト名               |
| ユーザ名                     | vSphere のユーザ名                        |
| パスワード                    | vSphere のパスワード                      |
| 有効                        | ストレージの有効/無効                       |
| Skip Certificate Verification | vSphere の証明書検証のスキップ有無             |

![スクリーンショット 2024-04-20 044110.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/86a248cc-6d91-61ce-d9b9-6f006dafec6a.png)

今回の環境では、`Skip Certificate Verification` をオフにしたところ、証明書検証でエラーが出ました。
接続先に問題がない場合は、オンにすることで回避可能です。

![スクリーンショット 2024-04-20 111649.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/ceb1b267-e7a7-a403-4357-5778956cff43.png)




### インポート


`pve`-`（作成したストレージ）`-`Virtual Guets`-`対象のVM`-`インポート`
vSphereのVMが表示されるので、右上の検索で表示を絞ることができます。

![スクリーンショット 2024-04-20 050326.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/2268e49a-0b26-7470-a12c-441dbb85404a.png)



### 全般
VMの設定はvSphereから自動的に引き継がれます。


![スクリーンショット 2024-04-20 051803.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/f6b1099d-2943-99f6-275c-49b2d0c1f58f.png)


| メッセージ                                                     | 和訳                                                                                           | 備考                                                                                                            |
|----------------------------------------------------------|----------------------------------------------------------------------------------------------|-----------------------------------------------------------------------------------------------------------------|
| If anything goes wrong during the live-import, new data written by the VM may be lost. | ライブインポート中に何か問題が発生した場合、VMによって書き込まれた新しいデータが失われる可能性があります。                       | Live-Import を利用するとESXi上でのVM停止・PVE上でのVM起動が自動化されるので、停止時間が短縮できるという機能。今回はESXi上でソースホスト実行中の場合、失敗しました。停止中に実行した場合、PVE上での自働起動は確認済み。 |
| EFI state cannot be imported, you may need to reconfigure the boot order (see OVMF/UEFI Boot Entries) | EFIステートをインポートできません。起動順序を再構成する必要がある可能性があります(詳細は、OVMF/UEFI Boot Entriesを参照)。         | BIOSの設定などを変更している場合は意識する必要がありそうです。今回は意識せずにインポートできました。                                         |
| Virtual guest seems to be running on source host. Import might fail or have inconsistent state! | 仮想ゲストがソースホスト（ESXi）で実行中のようです。インポートが失敗したり、一貫性のない状態になる可能性があります。                     | 今回はソースホスト（ESXi）上で対象VMを実行中の場合、失敗しました。そのため、VMを停止してインポートを実施しています。                                    |




live-importの原文は以下の通り。

```
Note that you can live-import VMs. This means that you can stop the VM on the ESXi source and then immediately start it on the Proxmox VE target with the disk data required for booting then being fetched on demand. The feature works similarly to live-restore that we provide for PBS backups since a while.

Live-import naturally requires a very stable and fast network between the PVE and ESXi host and taking some care with device driver/model selection, but it can reduce the downtime on import significantly.
```


### 詳細設定
今回は特に変更はしませんでした。

![スクリーンショット 2024-04-20 111910.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/aafaa5e2-3b8d-14f2-8a09-d30d0e7070ba.png)

### Resulting Config
確認し、インポートを選択します。

![スクリーンショット 2024-04-20 112001.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/c3f45f6b-3545-db14-3a89-b9056f7a371b.png)


無事インポートが出来たことを確認しました。

![スクリーンショット 2024-04-20 104216.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/8552de22-d4a6-d722-55d9-36e171d43eb0.png)





### Tipsなど

#### 作成失敗時のVMのロックと解除

作成失敗した場合、以下のようにVMがロックされて削除などできなくなる場合があります。
※以下はVMのディスクをデタッチしようとした際の表示。
※削除時は削除の実行はできますが、失敗します。


![スクリーンショット 2024-04-20 105454.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/2459468/317a6721-8b70-5ea2-8aa1-cab16956ccb7.png)



その場合は、PVE上で以下の通りVMをアンロックすることで操作が可能です。

```
qm unlock [VMID]
```



#### インポート時間の計測と目安

インポート時間はlive-importを有効にするとログに出力されます。
※live-importを無効の場合、時間は表示されずに進捗率だけ表示。

PVE上での自動起動が気にならない場合は有効にすると便利です。
※今回のようにlive-import有効で、ESXi上でVMを停止していても問題なし。

以下ログの抜粋。

Live-importなし
```
transferred 24.9 GiB of 25.0 GiB (99.77%)
transferred 25.0 GiB of 25.0 GiB (100.00%)
transferred 25.0 GiB of 25.0 GiB (100.00%)
scsi0: successfully created disk 'local-lvm2:vm-102-disk-1,size=25G'
TASK OK
```

Live-importあり
```
restore-scsi0: transferred 24.8 GiB of 25.0 GiB (99.24%) in 7m 31s
restore-scsi0: transferred 24.9 GiB of 25.0 GiB (99.49%) in 7m 32s
restore-scsi0: transferred 24.9 GiB of 25.0 GiB (99.61%) in 7m 33s
restore-scsi0: stream-job finished
restore-drive jobs finished successfully, removing all tracking block devices
TASK OK
```


また、今回は25GiBで約7分30秒かかりました。







## 参考


https://forum.proxmox.com/threads/new-import-wizard-available-for-migrating-vmware-esxi-based-virtual-machines.144023/

https://pve.proxmox.com/wiki/OVMF/UEFI_Boot_Entries

https://pve.proxmox.com/wiki/Advanced_Migration_Techniques_to_Proxmox_VE