淡々と備忘録を綴る

IT周りの行き詰まったところやメモを備忘録として記録します

Intel NUC12WSHi50Z RNUC12WSHI50Z00 にESXiをインストールする

NUCの物理構成

追加で購入したのは以下。

BIOSのアップデート

工場出荷時のままだとBIOSが最新ではないので、諸々の操作を行う前にNUCのBIOSを最新版に更新しておく。

ESXiインストールイメージの作成

PowerCLIのインストール

Install-Module -Name VMware.PowerCLI -Scope CurrentUser

途中で聞かれる質問にはぜんぶy。
ここで、以下のようなエラーが発生した。

Import-Module : モジュール ディレクトリに有効なモジュール ファイルが見つからなかったため、指定されたモジュール 'VMware.
PowerCLI' は読み込まれませんでした。
発生場所 行:1 文字:1
+ Import-Module VMware.PowerCLI
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : ResourceUnavailable: (VMware.PowerCLI:String) [Import-Module], FileNotFoundException
    + FullyQualifiedErrorId : Modules_ModuleNotFound,Microsoft.PowerShell.Commands.ImportModuleCommand

PackageManagement\Install-Package : 以下のコマンドは、このシステムで既に使用可能になっています: 'Export-VM,Get-VM,Get-V
MHost,Move-VM,New-VM,Remove-VM,Restart-VM,Set-VM,Set-VMHost,Start-VM,Stop-VM,Suspend-VM'。このモジュール 'VMware.VimAut
omation.Core' では既存のコマンドが上書きされる可能性があります。このモジュール 'VMware.VimAutomation.Core' をインストー
ルする場合は、-AllowClobber パラメーターを使用してください。
発生場所 C:\Program Files\WindowsPowerShell\Modules\PowerShellGet\1.0.0.1\PSModule.psm1:1809 文字:21
+ ...          $null = PackageManagement\Install-Package @PSBoundParameters
+                      ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    + CategoryInfo          : InvalidOperation: (Microsoft.Power....InstallPackage:InstallPackage) [Install-Package]、E
    xception
    + FullyQualifiedErrorId : CommandAlreadyAvailable,Validate-ModuleCommandAlreadyAvailable,Microsoft.PowerShell.Pack
   ageManagement.Cmdlets.InstallPackage

エラーを読む限り、すでに一部のコマンドがインポートされているから上書きを許可しないといけないらしい。
おそらくHyper-Vをコマンドレッドから色々弄ったときに入ったコマンドだろう。
指示通り-AllowClobberオプションを指定して再度コマンドを実行したら無事インストールできた。

次に、Vmwareのパートナープログラムみたいな奴に加入する設定を投入する。 これはやってもやらなくてもいい。が、途中で色々聞かれるのがめんどくさいので加入しておく。

Set-PowerCLIConfiguration -Scope User -ParticipateInCEIP $true

最後にVMwareのイメージビルダーをインポートする。

Import-Module VMware.ImageBuilder

イメージファイルの作成

以下リソースをDLしてくる

  • VMware-ESXi-7.0U3g-20328353-depot.zip
    • イメージファイルのオフラインバンドル版。公式サイトよりDL。
  • Net-Community-Driver_1.2.7.0-1vmw.700.1.0.15843807_19480755.zip
    • コニュニティドライバ。Intel NUCは公式のイメージファイルだけではNICを認識しないため。
  • nvme-community-driver_1.0.1.0-3vmw.700.1.0.15843807-component-18902434.zip
    • コニュニティドライバ。おなじくNVMeを認識しない可能性があると聞いたので

以下手順で、各ドライバを内包したISOイメージを作成する。

PS E:\VM\ESXi> Add-EsxSoftwareDepot -DepotUrl .\VMware-ESXi-7.0U3g-20328353-depot.zip

PS E:\VM\ESXi> Get-EsxImageProfile

Name                           Vendor          Last Modified   Acceptance Level
----                           ------          -------------   ----------------
ESXi-7.0U3g-20328353-no-tools  VMware, Inc.    2022/08/23 3... PartnerSupported
ESXi-7.0U3g-20328353-standard  VMware, Inc.    2022/09/01 0... PartnerSupported

PS E:\VM\ESXi> $ip = (Get-EsxImageProfile)[1]
PS E:\VM\ESXi> Add-EsxSoftwareDepot -DepotUrl .\nvme-community-driver_1.0.1.0-3vmw.700.1.0.15843807-component-18902434.zip
PS E:\VM\ESXi> Add-EsxSoftwareDepot -DepotUrl .\Net-Community-Driver_1.2.7.0-1vmw.700.1.0.15843807_19480755.zip
PS E:\VM\ESXi> $ip2 = New-EsxImageProfile -CloneProfile $ip -Name VMware-ESXi-7.0U3g -Vendor kwmtlab -AcceptanceLevel CommunitySupported
PS E:\VM\ESXi> Add-EsxSoftwarePackage -ImageProfile $ip2 -SoftwarePackage nvme-community,net-community

PS E:\VM\ESXi> Export-EsxImageProfile -ImageProfile $ip2 -FilePath .\VMware-ESXi-7.0U3g.zip -ExportToBundle
PS E:\VM\ESXi> Export-EsxImageProfile -ImageProfile $ip2 -FilePath .\VMware-ESXi-7.0U3g.iso -ExportToIso

ESXiをインストールするための準備はこれで終了。 ISOファイルをUSBに書き込んでNUCに挿した状態で起動する。

インストール

インストールを進めていると、途中でパープルスクリーンが出て作業が中断されてしまった。
内容を読んでいると、CPUのコアがどうのこうので怒られている様子。
今回購入したNUCはIntel第12世代のCPUを使用しているので、AlderLake特有のアーキテクチャによるものだと予想した。
以下サイトに同様の事象が存在したので、参考にして回避コマンドを追加してみる。 https://williamlam.com/2022/02/esxi-on-intel-nuc-12-extreme-dragon-canyon.html

cpuUniformityHardCheckPanic=FALSE

このコマンドによって、パープルスクリーンを突破してインストールが正常に完了した。

余談

ESXiがインストールされても、再起動を行うとまたパープルスクリーンが出現する。 永続的に回避するためには、以下コマンドを実行することが必要だった。

esxcli system settings kernel set -s cpuUniformityHardCheckPanic -v FALSE