ESXi 環境で遊びたい
前回までのあらすじ
Dell の G5 5000 という PC を昔買った.無駄にメモリが 64 GB もあるし単体で使うのはもったいないと,VMware vSphere Hypervisor (ESXi) をインストールしたのだった.それが楽しい地獄の始まりだった.
最初に悟ったのは ESXi はハードウェアとセットで買うものだなということ.そこらの適当な SSD や NIC だとインストール時点でさっぱり認識しない.仕事で触るものは HP サーバなんかと一緒にライセンス購入しているのでそのあたり気にしたことがなかった.
その後ググりまくって Intel チップの NIC を取り付けたり ESXi のバージョンを下げたりして最終的にやっと ESXi 6.7 Update 1 のインストールに成功したのだった.
旧環境 (Hyper-V) から Windows VM を引っ越し,ライセンス認証して一息ついた後,「これだとせっかくの GeForce RTX 2070 が VM で生かせないじゃないか」と気づいた.そして PCI パススルーという概念を知り,さらなる地獄に突入していくのだった.
最終的に疲れ切ってしまい,結局今は 13 年もののデスクトップ PC をメインに使っている.
やりたいことを整理する
さてこの ESXi 環境で自分は何がしたいのか
自然,PCI パススルーが要件になってくる.
あるべき形と遊び心
身も蓋もない結論から言うと,G5 5000 はそこそこ性能のいいゲーミング PC なのだから素直にスタンドアロンで使って,ESXi で遊びたいのであれば別途それ向きのハードウェアを買えばいい.それが最も自然な形.
だがお財布は厳しい.それが現実.それにせっかくの自宅環境,会社ではとてもできない攻めた構成をするチャンス.楽しい地獄に行こうじゃないか.
ESXi ホスト現状確認
ハードウェア情報
ESXi shell からコマンドで確認していく.
#--- ESXi 情報 [root@ESXI-01:~] vim-cmd hostsvc/hostsummary | grep -e fullName fullName = "VMware ESXi 6.7.0 build-10302608",
#--- PC モデル [root@ESXI-01:~] esxcli hardware platform get Platform Information UUID: ***** Product Name: G5 5000 Vendor Name: Dell Inc. Serial Number: ***** Enclosure Serial Number: ***** BIOS Asset Tag: IPMI Supported: false
#--- CPU 情報 [root@ESXI-01:~] vim-cmd hostsvc/hostsummary | grep -e cpuModel cpuModel = "Intel(R) Core(TM) i7-10700KF CPU @ 3.80GHz", [root@ESXI-01:~] esxcli hardware cpu global get CPU Packages: 1 CPU Cores: 8 CPU Threads: 16 Hyperthreading Active: true Hyperthreading Supported: true Hyperthreading Enabled: true HV Support: 3 HV Replay Capable: false HV Replay Disabled Reasons: incompatible CPU
#--- メモリ 情報 [root@ESXI-01:~] esxcli hardware memory get Physical Memory: 68482859008 Bytes Reliable Memory: 0 Bytes
#--- SSD 情報 [root@ESXI-01:~] esxcli storage core device uidmap list #--- SanDisk SATA SSD 240 GB t10.ATA_____SanDisk_SSD_PLUS_240GB__________________20248N442803________ Primary UID: t10.ATA_____SanDisk_SSD_PLUS_240GB__________________20248N442803________ Alternative Primary UIDs: Legacy UID: vml.010000000032303234384e343432383033202020202020202053616e446973 Alternative Legacy UIDs: #--- Samsung NVMe SSD 512GB (ESXi システムディスク) eui.353039304e8771560025384600000001 Primary UID: eui.353039304e8771560025384600000001 Alternative Primary UIDs: t10.NVMe____PM991_NVMe_Samsung_512GB______________________S509NF0N87715600000001 Legacy UID: vml.0100000000333533305f333933305f344538375f373135365f303032355f333834365f303030305f303030312e504d3939 Alternative Legacy UIDs: vml.0100000000202020202020533530394e46304e383737313536504d39393120 #--- SanDisk SATA SSD 240 GB t10.ATA_____SanDisk_SSD_PLUS_240GB__________________20248N446313________ Primary UID: t10.ATA_____SanDisk_SSD_PLUS_240GB__________________20248N446313________ Alternative Primary UIDs: Legacy UID: vml.010000000032303234384e343436333133202020202020202053616e446973 Alternative Legacy UIDs:
RDM ディスク情報
SATA 接続の SSD 2枚を VM 向けにパススルーしている.Maps to:
の vml. ...
が上記 esxcli storage core device uidmap list
の Legacy UID と対応している様子。
[root@ESXI-01:~] vmkfstools -q /vmfs/volumes/datastore1/RDM/SanDisk_SSD_PLUS_240GB_20248N442803.vmdk Disk /vmfs/volumes/datastore1/RDM/SanDisk_SSD_PLUS_240GB_20248N442803.vmdk is a Passthrough Raw Device Mapping Maps to: vml.010000000032303234384e343432383033202020202020202053616e446973 [root@ESXI-01:~] [root@ESXI-01:~] vmkfstools -q /vmfs/volumes/datastore1/RDM/SanDisk_SSD_PLUS_240GB_20248N446313.vmdk Disk /vmfs/volumes/datastore1/RDM/SanDisk_SSD_PLUS_240GB_20248N446313.vmdk is a Passthrough Raw Device Mapping Maps to: vml.010000000032303234384e343436333133202020202020202053616e446973 [root@ESXI-01:~]
デバイスパススルー状況
Address | Description | Passthrough | メモ |
---|---|---|---|
0000:01:00.3 | nVidia Corporation Serial bus controller | Active | VM 用 GPU |
0000:01:00.2 | nVidia Corporation USB controller | Active | VM 用 GPU |
0000:01:00.1 | nVidia Corporation Audio device | Active | VM 用 GPU |
0000:01:00.0 | nVidia Corporation VGA compatible controller | Active | VM 用 GPU |
0000:03:00.0 | Realtek Semiconductor Co., Ltd. Ethernet controller | Active | VM 用 LANポート |
0000:05:00.1 | Intel Corporation 82575EB Gigabit Network Connection | Disabled | ※未使用 |
0000:05:00.0 | Intel Corporation 82575EB Gigabit Network Connection | Disabled | ESXi 管理アクセス用 |
Win10 VM 現状確認
PCI device 設定
PCI device 番号 | デバイス名 |
---|---|
PCI device 1 | |
PCI device 2 | |
PCI device 3 | |
PCI device 4 | |
PCI device 5 |
モニタ出力
GPU パススルーしているので,RTX 2070 から HDMI ケーブルをモニタにつなげれば映る.再起動時やスリープ時に問題あり.
入力デバイス
オンボード USB ポートをパススルーできないので,マウスやキーボードを差せない.つまり直接動かす手立てがない.
音声出力
入力デバイスと同様,オンボードの音声入出力端子をパススルーできないため出力できない.
次にやること
- USB カードを追加してパススルーし,USBマウス・キーボードを接続できるようにする
- USB サウンドカードを接続し,外部スピーカーと接続する
まずはここからだ.