免責事項:これは英文の記事「ESXi Host Client inadvertently sets cpuid.coresPerSocket to 1 when saving virtual machine settings(425838)」の日本語訳です。記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
仮想マシンの CPU トポロジ設定がデフォルト(.vmx ファイル内に cpuid.coresPerSocket のエントリが存在しない状態)の場合に、ESXi Host Client を使用して仮想マシンの設定を編集および保存すると、構成ファイルに cpuid.coresPerSocket = "1" が明示的に追加される事象が発生します。
この動作は、ユーザーが UI 上で CPU トポロジの設定を変更していない場合でも発生します。
var/run/log/hostd.log ファイルには、以下のような再構成タスクが記録されます。
YYYY-MM-DDTHH:MM:SS In(166) Hostd[2099567]: [Originator@6876 sub=Vimsvc.TaskManager opID=esxui-98fd-4361 sid=5236ed6a user=root] Task Created : haTask-5-vim.VirtualMachine.reconfigure-2207015668
VMware vSphere ESXi 8
ESXi Host Client のユーザーインターフェイスは、cpuid.coresPerSocket パラメータが存在しない場合、その値をデフォルトで 1 として解釈します。設定ウィザードで 保存 をクリックすると、このデフォルト値が仮想マシン構成ファイルに書き込まれ、設定が自動割り当てからソケットあたり 1 コアという固定値に変更されます。
この問題を解決し、設定をデフォルトの状態に戻すには、vSphere Client を使用して以下の手順を実行してください。
vSphere Client にログインします。
対象の仮想マシンを右クリックし、設定の編集 を選択します。
仮想マシンオプション タブに移動します。
CPU トポロジ を展開します。
ソケットあたりのコア の設定を確認します。
設定値を パワーオン時に自動割り当て に変更します。
OK をクリックして変更を保存します。
この問題を回避するには、仮想マシンの設定を編集する際に ESXi Host Client ではなく vSphere Client を使用してください。