はじめに
今回、個人の勉強用にコンシューマー向けの Intel CPU を利用した自宅ラボを構築したのですが、 vSphere ESXi インストール時に PSOD (Purple Screen Of Death) が発生し、非常に手こずった。
自身の備忘と今後、同じ様に vSphere ESXi を利用した自宅ラボ環境を構築しようとしている人のために記事に残しておく。
この記事を読んで欲しい人
- Intel 12th 以降の コンシューマー向けのCPU を利用して vSphere ESXi を導入しようと考えている人
PSOD が発生する理由
コンシューマー向けの Intel 12th 以降の CPUでは P コア、 E コアの二種類のコアが搭載された。
P コア、 E コアの大まかな違いについては以下の通り。
Core | P コア (Performance Core) | E コア (Efficient Core) |
---|---|---|
特徴 | 性能重視 | 電力効率重視 |
最適化 | シングルスレッドや並列度の低いタスク | 並列度の高いワークロード |
Hyper-Threading | 対応 | 非対応 |
vSphere ESXi はコンシューマーアーキテクチャを認識しておらず、 CPU コアが均一であることを前提としている。
素直に vSphere ESXi をインストールしようとすると CPU プロパティが異なることが原因で CPU 均一性のチェックにおいて PSOD が発生する。
PSOD を回避する方法
以下の設定を行うことで PSOD を回避する。
- CPU 均一性チェックを無効化
- MSR 障害を無視
MSR (Model-Specific Registers) とは
プロセッサ実装によって提供される制御レジスタであり、システムソフトウェアがパフォーマンスの監視、プロセッサステータスの確認、デバッグ、プログラムのトレース、特定の CPU 機能の切り替え等、様々な機能と対話できるようにする。
vSphere ESXi インストール・設定変更手順
画面の流れに沿ったインストール・設定手順を記載する。
vSphere ESXi インストール
PC に vSphere ESXi のインストールメディアを挿入し、起動する
以下の画面で5秒以内に Shift + O を押下し、 Edit boot options に遷移する
…cdromBoot の後に以下の文字列を入力し、 Enter を押下する
cpuUniformityHardCheckPanic=FALSE
※画面イメージは以下の通り
以下の画面で Enter を押下し、インストールを開始する
以下の画面で F11 を押下し、 EULA に同意する
以下の画面でインストール先とするディスクを選択した状態で Enter を押下する
キーボードレイアウトに [ Japanese ] を選択した状態で Enter を押下する
設定したい root パスワードを2度入力し、 Enter を押下する
F11 を押下し、インストールを続行する
以下の画面で Alt + F1 を押下し、 シェルコンソール に遷移する
※Enter を押下しない様に注意ESXi Shell で root ユーザーとしてログインする
ID:root
PW:(Blank)
※パスワードは設定したものではなく、(Blank)以下のコマンドを入力し、 Enter を押下する
vi /vmfs/volumes/BOOTBANK1/boot.cfg
※vi 操作で boot.cfg を変更する
6行目の autoPartition=FALSE の後に以下を入力する
cpuUniformityHardCheckPanic=FALSE
:wq
を入力後、 Enter を押下し、変更を上書き保存するexit
を入力後、 Enter を押下し、ログアウトする以下の画面で Alt + F2 を押下し、 DCUI に遷移する
以下の画面で Enter を押下し、再起動する
設定変更
DCUI で F2 を押下する
以下の画面で root のログイン情報を入力し、 Enter を押下する
ID:root
PW:<root_password> ※インストール時に指定したパスワード[ Troubleshooting Options ] を選択し、 Enter を押下する
[ Enable ESXi Shell ] を選択し、 Enter を押下し、“ESXi Shell is Enabled"に変化したことを確認する
Alt + F1 を押下し、シェルコンソール に遷移するESXi Shell で root ユーザーとしてログインする
ID:root
PW:<root_password> ※インストール時に指定したパスワード以下のコマンドを順番に実行する
CPU 均一性チェック設定確認 (Configured が TRUE であることを確認)
esxcli system settings kernel list -o cpuUniformityHardCheckPanic
CPU 均一性チェック設定 (Configured を FALSE に変更)
esxcli system settings kernel set -s cpuUniformityHardCheckPanic -v FALSE
CPU 均一性チェック設定確認 (Configured が TRUE であることを確認)
esxcli system settings kernel list -o cpuUniformityHardCheckPanic
MSR 障害無視設定確認 (Configured が FALSE であることを確認)
esxcli system settings kernel list -o ignoreMsrFaults
MSR 障害無視設定 (Configured を TRUE に変更)
esxcli system settings kernel set -s ignoreMsrFaults -v TRUE
MSR 障害無視設定確認 (Configured が TRUE であることを確認)
esxcli system settings kernel list -o ignoreMsrFaults
※以下の画面の通り順番にコマンドを実行する
exit
コマンドを実行し、ログアウトする以下の画面で Alt + F2 を押下し、 DCUI に遷移する
[ Disable ESXi Shell ] を選択し、 Enter を押下し、“ESXi Shell is Disabled"に変化したことを確認する
ESC を2度押下し、DCUI からログアウトする
手順は以上で終了
環境
- vCenter Serer 8.0.3 ( Build:24022515 )
- vSphere ESXi 8.0.3 ( Build:24022510 )