Proxmox VEでESXi 8をネスト構築する方法|VM作成時の設定ポイントまとめ

Proxmox VE 上で ESXi 8 をネスト環境として構築する場合、デフォルト設定ではインストールに失敗したり、仮想ディスクや仮想 NIC を認識しないことがあります。本記事では、実際に動作確認した設定値と、その理由を項目ごとに解説します。
インストール環境
■ハードウェア
CPU: Xeon E5-2470 v2 10Core/2.4GHz(Intel VT-d 有効)
RAM: 32.0GB Dual-Channel DDR3
M/B: Dell Inc. 0W7H8C (CPU1)
■Proxmox
Proxmox Virtual Environment 8.4.18
■ESXi
VMware vSphere Hypervisor 8.0 Update 3e
※検証用途のため、フル機能の評価版モード(60日間)で使用。
以降は、Proxmox 管理画面の VM の新規作成ウィザードの説明となります。
OS

- ゲストOS:Other
ESXi は Linux カーネルでもなく、独自開発のマイクロカーネルですので、Other を選択します。
システム

- BIOS:OVMF(UEFI)
ESXi 7.0 以降では UEFI が推奨されています。
- SCSIコントローラ:LSI 53C895A
既定の “LSI 53C895A” を選択してください。”VMware PVSCSI” も仕様上は利用可能ですが、ネスト環境の場合、仮想 SCSI ディスクを認識しない事象が発生する可能性があります。当方の環境でも SCSI ディスクは認識しませんでした。
- Qemuエージェント:チェックOFF(無効)
ESXi(VMkernel)は QEMU エージェントに非対応ですのでチェックを外してください。この箇所は有効にすると ESXi インストーラーがエラーになります。
ディスク
ESXi の OS インストール用ディスクとデータストア用ディスクの2本をまとめて作成します。なお、ディスク1本でインストールした場合、OS 領域で丸っと使用されてしまいます(回避手段がありますが手間がかかります)。

- 1本目 ⇒ バス/デバイス:SATA 0
ESXi 標準インストーラーで認識させるための必須条件として、ESXi の OS インストール領域のディスクは SATA を指定します。ネスト環境では SATA を使用する方が安定してインストールできるからです。ディスクサイズは 40GiB を指定しましたが、このサイズだとシステムログ領域がメモリー上に配置されます。検証用として動作には問題ありませんが、ESXi のインストール中に以下のような警告がでます。

永続的にログを残したい場合、OS インストール領域のディスクサイズは最小でも142GiB以上を指定してください。
- 1本目 ⇒ SSDエミュレーション:チェックON(有効)
ESXi に SSD として認識させ、HDD 特有のタスクを抑制するために指定します。

- 2本目 ⇒ バス/デバイス:SATA 1
ESXi 上で動作する VM 用のデータストア用として追加します。
- 2本目 ⇒ SSDエミュレーション:チェックON(有効)
1本目と同様に ESXi に SSD として認識させます。
CPU

- コア:4コア以上推奨
ネストのハイパーバイザー上でさらに VM を動作させるため、可能な限り複数のコアを割り当てます。
- 種別:host
物理 CPU 仮想化支援機能(Intel VT-x / AMD-V)をパススルーで ESXi に渡すために選択します。大抵の場合、host 以外を指定すると ESXi インストーラーがエラーになります。
- NUMA:チェックON(有効)
複数コア割当時に、物理ホストのメモリ配置を最適化してレイテンシ(遅延)を削減します。
メモリ

- メモリ(MiB):
ネストで動作させる ESXi は、もともとは物理サーバーを直接支配する OS です。そのため起動した時点で割り当てられたメモリー空間を確保するため、ESXi 上の VM が動作していなくても、Proxmox からは ESXi が割り当てられた全てのメモリーを継続して使用しているように見えます。
また、仮に18GBのメモリーを ESXi に割り当てた場合、以下の利用内訳となります。ネストのネストとなる目的の VM に割り当てるメモリーサイズ+オーバーヘッド分が必要になります。
- ESXi オーバーヘッド:約2GB
- ESXi 上の VM が使用:約16GB
参考までに、Proxmox と ESXi と、アイドル時にそれぞれメモリー使用量がどうなるのか、以下図に残しておきます。
Proxmox 管理画面の ESXi(VM)のサマリー

ESXi 管理画面の自身のサマリー

- Ballooning デバイス:チェックOFF(無効)
有効でも無効でも変化はありません。本来は Proxmox ホストのメモリー枯渇時に VM から(今回はネストハイパーバイザーであるESXiから)余剰メモリーを回収してホストメモリーに充当する機能です。ですが、ESXi の VMkernel には Ballooning と連携するための専用ドライバーが存在しないため、有効でも動作しません(ESXi は割り当てられたメモリーを占有し続けます)。管理面からチェックを外すという選択です。
ネットワーク

- モデル:VMware vmxnet3
デフォルトの “Intel E1000” ではなく、ESXi 8.0標準インストーラー内にドライバが内蔵されている標準ネットワーク規格にするために “VMware vmxnet3” を選択します。
- ファイアウォール:チェックOFF(無効)
ESXi の管理パケット、API 通信などが遮断されるのを防ぐために無効にします。また、このファイアウォールの無効化により、MAC アドレスの偽装(スプーフィング)を防止するフィルタリング機能も OFF になります。
これで、ESXi 上の VM が、ESXi の 仮想 NIC とは異なる独自の MAC アドレスでパケットを外に送信できるようになります。
最後にあるあるの失敗ですが、VM 作成後に起動すると ESXi のインストーラーが起動し、OS インストールが進みます。問題なく完了すると reboot を促されます。

ここで、Proxmox の操作で VM を “停止” してください(強制停止です)。
続いて Proxmox の操作で ESXi の VM の「ブート順」を編集します。OS をインストールした “SATA 0” が最優先になるように変更し、VM を “開始” してください。

以上です。
まとめ
Proxmox VE 上に ESXi 8.0 をネスト構築する際は、デフォルトの VM 設定のまま進めるとドライバー
の認識不足や初期化エラーが発生しがちです。
特に重要なポイントを再掲すると以下の通りです。
- CPU Type(host): 物理 CPU の仮想化支援機能(Intel VT-x / AMD-V)を ESXi 側にパススルーさせるために必須。
- OS ディスク(SATA 接続): ネスト環境での認識トラブルを防ぐため SATA バスを指定。ログの永続化が必要な場合は 142GiB 以上の容量を確保。
- QEMU エージェント(無効): ESXi(VMkernel) 非対応のため、チェックを外す(有効時はインストール時にエラー)。
- ブート順設定: インストール完了後は一旦 VM を停止し、インストール済みの SATA 0 を最優先に並び替えてから起動する。
これらの設定を適切に行うことで、Proxmox 上で ESXi 8.0 の検証環境を素早くセットアップできます。ネスト環境での検証やラボ構築の参考にしていただければ幸いです。