DeskMini H470 の NVMe SSD に VMWare ESXi 7.0 Update 3c をインストールする

# 前提
- 自分用作業メモ。
- Hypervisor 使ってみたかった。

# 構成
- DeskMini H470
- CPU
    - Intel Core i5 10400
- Mem.
    - CFD W4N2666CM-16GR x2
- SSD
    - ADATA XPG SX8200 Pro　ASX8200PNP-256GT-C
        - NVMe Community Driver でサポートされているもの
        - https://flings.vmware.com/community-nvme-driver-for-esxi
        - http://pci-ids.ucw.cz/read/PC/1cc1/8201
    - 安いから買っておいた↓だと厳しそうだった
        - Transcend PCIe M.2 SSD (2280) 128GB TS128GMTE110S

# 手順メモ
## 1. PowerCLI を入れる
- Install-Module/Import-Module で怒られるのでついでに実行ポリシーも緩める

```powershell
PS >  Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
PS > Install-Module -Name VMware.PowerCLI
PS > Import-Module VMware.ImageBuilder
```

## 2. ESXi Offline Bundle をダウンロードする
- https://www.vmware.com/jp/products/vsphere-hypervisor.html
- Register して `License & Download`　→ `Download Packages` → `VMware vSphere Hypervisor (ESXi) Offline Bundle` から
    - 自分の環境だとメールアドレスのログインが永遠に失敗するので、メールに書いてあった CN でログインした
    - あと Firefox 97.0 だと `Manually Download` のボタンが反応しないので Edge でやった

## 3. NIC Driver をダウンロードする
- DeskMini H470 は `Intel I219-V` で、これは ESXi 標準イメージでは認識されない
- Community Driver を使う
    - https://flings.vmware.com/community-networking-driver-for-esxi

## 4. NVMe Driver をダウンロードする
- NVMe SSD に入れたいが、これもまた標準イメージの認識範囲が狭い
- Community Driver を使う
    - https://flings.vmware.com/community-nvme-driver-for-esxi
    - ADTA, Micro/Crucial, Silicon Motion など、一部の NVMe SSD を認識できるようになる

## 5. カスタム ISO の作成
- ディレクトリ構成

```powershell
PS D:\ESXi> dir


    ディレクトリ: D:\ESXi


Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        2022/02/19     12:18         230048 Net-Community-Driver_1.2.2.0-1vmw.700.1.0.15843807_18835109.zip
-a----        2022/02/19     12:20          98560 nvme-community-driver_1.0.1.0-3vmw.700.1.0.15843807-component-1890243
                                                  4.zip
-a----        2022/02/19     12:16      395771580 VMware-ESXi-7.0U3c-19193900-depot.zip
```

- PowerCLI のロード

```powershell
PS D:\ESXi> Set-ExecutionPolicy -ExecutionPolicy Bypass -Scope Process
PS D:\ESXi> Import-Module VMware.ImageBuilder
```

- Offline Bundle の読み込み

```powershell
PS D:\ESXi> Add-EsxSoftwareDepot .\VMware-ESXi-7.0U3c-19193900-depot.zip

Depot Url
---------
zip:D:\ESXi\VMware-ESXi-7.0U3c-19193900-depot.zip?index.xml
```

```powershell
PS D:\ESXi> Add-EsxSoftwareDepot .\Net-Community-Driver_1.2.2.0-1vmw.700.1.0.15843807_18835109.zip

Depot Url
---------
zip:D:\ESXi\Net-Community-Driver_1.2.2.0-1vmw.700.1.0.15843807_18835109.zip?index.xml
```

```powershell
PS D:\ESXi> Add-EsxSoftwareDepot .\nvme-community-driver_1.0.1.0-3vmw.700.1.0.15843807-component-18902434.zip

Depot Url
---------
zip:D:\ESXi\nvme-community-driver_1.0.1.0-3vmw.700.1.0.15843807-component-18902434.zip?index.xml
```

- Bundle の確認

```powershell
PS D:\ESXi> Get-EsxSoftwarePackage | Format-Table

Name                     Version                        Vendor     Creation Date
----                     -------                        ------     -------------
qedentv                  3.40.5.53-22vmw.703.0.20.19... VMW        2022/01/11 23...
esx-ui                   1.36.0-18403931                VMware     2021/07/30 18...
nmlx5-rdma               4.19.16.11-1vmw.703.0.20.19... VMW        2022/01/11 23...
nvmetcp                  1.0.0.0-1vmw.703.0.20.19193900 VMW        2022/01/11 23...
sfvmk                    2.4.0.2010-6vmw.703.0.20.19... VMW        2022/01/11 23...
nfnic                    4.0.0.70-1vmw.703.0.20.1919... VMW        2022/01/11 23...
brcmfcoe                 12.0.1500.2-3vmw.703.0.20.1... VMW        2022/01/11 23...
pvscsi                   0.1-4vmw.703.0.20.19193900     VMW        2022/01/11 23...
qflge                    1.1.0.11-1vmw.703.0.20.1919... VMW        2022/01/11 23...
loadesx                  7.0.3-0.20.19193900            VMware     2022/01/11 23...
esx-xserver              7.0.3-0.20.19193900            VMware     2022/01/11 23...
vsanhealth               7.0.3-0.20.19193900            VMware     2022/01/11 23...
crx                      7.0.3-0.20.19193900            VMware     2022/01/11 23...
smartpqi                 70.4149.0.5000-1vmw.703.0.2... VMW        2022/01/11 23...
bmcal                    7.0.3-0.20.19193900            VMware     2022/01/11 23...
bnxtnet                  216.0.50.0-41vmw.703.0.20.1... VMW        2022/01/11 23...
elxiscsi                 12.0.1200.0-9vmw.703.0.20.1... VMW        2022/01/11 23...
vmkata                   0.1-1vmw.703.0.20.19193900     VMW        2022/01/11 23...
net-community            1.2.2.0-1vmw.700.1.0.15843807  VMW        2021/10/20 5:...   <----- NIC
nmlx4-en                 3.19.16.8-2vmw.703.0.20.191... VMW        2022/01/11 23...
irdman                   1.3.1.20-1vmw.703.0.20.1919... VMW        2022/01/11 23...
atlantic                 1.0.3.0-8vmw.703.0.20.19193900 VMW        2022/01/11 23...
vsan                     7.0.3-0.20.19193900            VMware     2022/01/11 23...
nvmxnet3                 2.0.0.30-1vmw.703.0.20.1919... VMW        2022/01/11 23...
nmlx4-core               3.19.16.8-2vmw.703.0.20.191... VMW        2022/01/11 23...
mtip32xx-native          3.9.8-1vmw.703.0.20.19193900   VMW        2022/01/11 23...
lsuv2-lsiv2-drivers-p... 1.0.0-9vmw.703.0.20.19193900   VMware     2022/01/11 23...
esx-update               7.0.3-0.20.19193900            VMware     2022/01/11 23...
nvmerdma                 1.0.3.5-1vmw.703.0.20.19193900 VMW        2022/01/11 23...
lsuv2-oem-dell-plugin    1.0.0-1vmw.703.0.20.19193900   VMware     2022/01/11 23...
qfle3f                   1.0.51.0-22vmw.703.0.20.191... VMW        2022/01/11 23...
lsuv2-oem-lenovo-plugin  1.0.0-1vmw.703.0.20.19193900   VMware     2022/01/11 23...
vdfs                     7.0.3-0.20.19193900            VMware     2022/01/11 23...
iser                     1.1.0.1-1vmw.703.0.20.19193900 VMW        2022/01/11 23...
lsuv2-nvme-pcie-plugin   1.0.0-1vmw.703.0.20.19193900   VMware     2022/01/11 23...
nenic                    1.0.33.0-1vmw.703.0.20.1919... VMW        2022/01/11 23...
vmware-esx-esxcli-nvm... 1.2.0.44-1vmw.703.0.20.1919... VMware     2022/01/11 23...
elx-esx-libelxima.so     12.0.1200.0-4vmw.703.0.20.1... VMware     2022/01/11 23...
lsi-mr3                  7.718.02.00-1vmw.703.0.20.1... VMW        2022/01/11 23...
qfle3                    1.0.67.0-22vmw.703.0.20.191... VMW        2022/01/11 23...
nvme-pcie                1.2.3.16-1vmw.703.0.20.1919... VMW        2022/01/11 23...
esx-base                 7.0.3-0.20.19193900            VMware     2022/01/11 23...
igbn                     1.4.11.2-1vmw.703.0.20.1919... VMW        2022/01/11 23...
lsuv2-smartpqiv2-plugin  1.0.0-8vmw.703.0.20.19193900   VMware     2022/01/11 23...
vmw-ahci                 2.0.11-1vmw.703.0.20.19193900  VMW        2022/01/11 23...
ionic-en                 16.0.0-16vmw.703.0.20.19193900 VMW        2022/01/11 23...
qcnic                    1.0.15.0-14vmw.703.0.20.191... VMW        2022/01/11 23...
lpfc                     14.0.169.25-5vmw.703.0.20.1... VMW        2022/01/11 23...
lsi-msgpt3               17.00.12.00-1vmw.703.0.20.1... VMW        2022/01/11 23...
qfle3i                   1.0.15.0-15vmw.703.0.20.191... VMW        2022/01/11 23...
nmlx4-rdma               3.19.16.8-2vmw.703.0.20.191... VMW        2022/01/11 23...
tools-light              11.3.5.18557794-19193900       VMware     2022/01/11 23...
lsi-msgpt35              19.00.02.00-1vmw.703.0.20.1... VMW        2022/01/11 23...
ntg3                     4.1.7.0-0vmw.703.0.20.19193900 VMW        2022/01/11 23...
ixgben                   1.7.1.35-1vmw.703.0.20.1919... VMW        2022/01/11 23...
nhpsa                    70.0051.0.100-4vmw.703.0.20... VMW        2022/01/11 23...
gc                       7.0.3-0.20.19193900            VMware     2022/01/11 23...
nvmxnet3-ens             2.0.0.22-1vmw.703.0.20.1919... VMW        2022/01/11 23...
i40en                    1.11.1.31-1vmw.703.0.20.191... VMW        2022/01/11 23...
vmkfcoe                  1.0.0.2-1vmw.703.0.20.19193900 VMW        2022/01/11 23...
esx-dvfilter-generic-... 7.0.3-0.20.19193900            VMware     2022/01/11 23...
lpnic                    11.4.62.0-1vmw.703.0.20.191... VMW        2022/01/11 23...
nmlx5-core               4.19.16.11-1vmw.703.0.20.19... VMW        2022/01/11 23...
rste                     2.0.2.0088-7vmw.703.0.20.19... VMW        2022/01/11 23...
lsuv2-oem-hp-plugin      1.0.0-1vmw.703.0.20.19193900   VMware     2022/01/11 23...
qlnativefc               4.1.14.0-26vmw.703.0.20.191... VMware     2022/01/11 23...
nvme-community           1.0.1.0-3vmw.700.1.0.15843807  VMW        2020/01/08 12...    <----- NVMe
trx                      7.0.3-0.20.19193900            VMware     2022/01/11 23...
lsuv2-intelv2-nvme-vm... 2.7.2173-1vmw.703.0.20.1919... VMware     2022/01/11 23...
qedrntv                  3.40.5.53-18vmw.703.0.20.19... VMW        2022/01/11 23...
native-misc-drivers      7.0.3-0.20.19193900            VMware     2022/01/11 23...
lsuv2-hpv2-hpsa-plugin   1.0.0-3vmw.703.0.20.19193900   VMware     2022/01/11 23...
lsi-msgpt2               20.00.06.00-4vmw.703.0.20.1... VMW        2022/01/11 23...
cpu-microcode            7.0.3-0.20.19193900            VMware     2022/01/11 23...
ne1000                   0.8.4-11vmw.703.0.20.19193900  VMW        2022/01/11 23...
bnxtroce                 216.0.58.0-23vmw.703.0.20.1... VMW        2022/01/11 23...
icen                     1.4.1.7-1vmw.703.0.20.19193900 VMW        2022/01/11 23...
esxio-combiner           7.0.3-0.20.19193900            VMware     2022/01/11 23...
elxnet                   12.0.1250.0-5vmw.703.0.20.1... VMW        2022/01/11 23...
vmkusb                   0.1-6vmw.703.0.20.19193900     VMW        2022/01/11 23...
iavmd                    2.7.0.1157-2vmw.703.0.20.19... VMW        2022/01/11 23...
```

- イメージプロファイルの作成

```powershell
PS D:\ESXi> Get-EsxImageProfile

Name                           Vendor          Last Modified   Acceptance Level
----                           ------          -------------   ----------------
ESXi-7.0U3c-19193900-no-tools  VMware, Inc.    2022/01/12 0... PartnerSupported
ESXi-7.0U3c-19193900-standard  VMware, Inc.    2022/01/18 0... PartnerSupported


PS D:\ESXi> New-EsxImageProfile -CloneProfile ESXi-7.0U3c-19193900-standard -Name ESXi-7.0U3c-19193900-standard-i219v-nvme -Vendor uyiromo

Name                           Vendor          Last Modified   Acceptance Level
----                           ------          -------------   ----------------
ESXi-7.0U3c-19193900-standa... uyiromo         2022/01/18 0... PartnerSupported
```

- イメージプロファイルに Drivers を追加

```powershell
PS D:\ESXi> Add-EsxSoftwarePackage -ImageProfile ESXi-7.0U3c-19193900-standard-i219v-nvme -SoftwarePackage net-community

Name                           Vendor          Last Modified   Acceptance Level
----                           ------          -------------   ----------------
ESXi-7.0U3c-19193900-standa... uyiromo         2022/02/19 1... PartnerSupported
```

```powershell
PS D:\ESXi> Add-EsxSoftwarePackage -ImageProfile ESXi-7.0U3c-19193900-standard-i219v-nvme -SoftwarePackage nvme-community

Name                           Vendor          Last Modified   Acceptance Level
----                           ------          -------------   ----------------
ESXi-7.0U3c-19193900-standa... uyiromo         2022/02/19 1... PartnerSupported

```


- ISO イメージの作成

```powershell
PS D:\ESXi>  Export-EsxImageProfile -ImageProfile ESXi-7.0U3c-19193900-standard-i219v-nvme -ExportToIso -FilePath "ESXi-7.0U3c-19193900-standard-i219v-nvme.iso"
```

```powershell
PS D:\ESXi> dir

    ディレクトリ: D:\ESXi

Mode                 LastWriteTime         Length Name
----                 -------------         ------ ----
-a----        2022/02/19     12:37      414787584  ESXi-7.0U3c-19193900-standard-i219v-nvme.iso
-a----        2022/02/19     12:18         230048 Net-Community-Driver_1.2.2.0-1vmw.700.1.0.15843807_18835109.zip
-a----        2022/02/19     12:20          98560 nvme-community-driver_1.0.1.0-3vmw.700.1.0.15843807-component-18902434.zip
-a----        2022/02/19     12:16      395771580 VMware-ESXi-7.0U3c-19193900-depot.zip
```

## 6. インストール
- プロンプト通りに進めれば特に困ることはない

# VM を動かす
- DS380 に構築した TrueNAS の HDD (RAID-Z2) データストアを構築した
    - https://qiita.com/uyiromo/items/3e634e2eeae1be27ef01
- Win10 を入れたがDisk R/W が 1 MB/s 切ってて超モッサリ
    - SSD (Mirror) に変える予定




# 感想
- VMWare のページ、ログインに失敗したり Temporary Unavailable が表示されたり Unknown Error が頻繁に出てイラつく。
- 個人で使うには結構な労力がいる。
    - 特に Hardware Requirement
    - 十全なベンダーサポートの元で使うものだなこれ





# 参考にさせていただいたページ
- https://soji256.hatenablog.jp/entry/2020/04/28/090814
- http://tech-wiki.pomme-verte.net/?p=934