免責事項:これは英文の記事「Powering on VM with Latency Sensitivity as high may report "Unable to apply latency-sensitivity setting to virtual machine" during power-on」の日本語訳です。
記事はベストエフォートで翻訳を進めているため、ローカライズ化コンテンツは最新情報ではない可能性があります。最新情報は英語版の記事で参照してください。
Unable to apply latency-sensitivity setting to virtual machine <VM name>. No valid placement on the host." のメッセージが出力されることがあります。YYYY-MM-DDTHH:MM:SS cpu18:xxxxxxxx)WARNING: CpuSched: 311: vcpu xxxxxxxx is placed in adoption mode since all pcpus in its affinitySet 0xffffffffff have exclusive affinity to other vcpusYYYY-MM-DDTHH:MM:SS cpu19:xxxxxxxx)WARNING: CpuSched: 311: vcpu xxxxxxxx is placed in adoption mode since all pcpus in its affinitySet 0xffffffffff have exclusive affinity to other vcpusYYYY-MM-DDTHH:MM:SS cpu19:xxxxxxxx)WARNING: CpuSched: 311: vcpu xxxxxxxx is placed in adoption mode since all pcpus in its affinitySet 0xffffffffff have exclusive affinity to other vcpusYYYY-MM-DDTHH:MM:SS cpu19:xxxxxxxx)WARNING: CpuSched: 311: vcpu xxxxxxxx is placed in adoption mode since all pcpus in its affinitySet 0x80000 have exclusive affinity to other vcpusYYYY-MM-DDTHH:MM:SS cpu12:xxxxxxxx)WARNING: CpuSched: 1324: Unable to apply latency-sensitivity setting to virtual machine <vm name>. No valid placement on the host.YYYY-MM-DDTHH:MM:SS cpu2:xxxxxxxx)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 2YYYY-MM-DDTHH:MM:SS cpu18:xxxxxxxx)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 18YYYY-MM-DDTHH:MM:SS cpu11:xxxxxxxx)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 11YYYY-MM-DDTHH:MM:SS cpu1:xxxxxxxx)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 1
レイテンシ感度を「高」に設定するには、VM の CPU とメモリを 100% 予約する必要があり、各仮想 CPU には物理コアへの排他的アクセスが許可されます。VM に設定されたコアが単一の NUMA ノードで利用できない場合は、VM のパワーオン操作を正常に実行できるよう、レイテンシ感度設定はデフォルトで「通常」に設定されます。
この問題は、VM の NUMA クライアントが特定の NUMA ノードで使用可能なコア数よりも多くの排他的コアを必要としたために、VM に排他的コアとして提供するための非排他的コアが利用できないために発生します。
この問題を解決するには、VM を複数の NUMA クライアントに分割し、各 NUMA ノードから各 NUMA クライアントに割り当てるのに十分な非排他的コアが存在するように、NUMA クライアントを異なる NUMA ノードに配置します。
以下の手順を実行して、VM がソケット間で排他的なコア アフィニティを使用してパワーオンできることを確認します。
numa.vcpu.maxPerClient = "6" <- NUMAクライアントが特定のサイズに制限されるように強制しますnuma.consolidate = "FALSE" <- NUMAクライアントがNUMAノードに分散されることを強制します
Note: この設定は、以下のホスト構成に基づいており、ホスト上のハードウェアに応じて調整する必要があります。上記の例では、NUMAクライアントはNUMAノードに分散されており、NUMAノード(ソケット)ごとに6つのクライアント(VMコア)が割り当てられます。
従って、numa.vcpu.maxPerClient=(VM の vCPU の数)/(ホストのソケットの数) になります。
Host CPU:Number of Sockets: 2Number of cores (total): 40 (20 cores per socket) <- ハイパースレッディングが有効です
VM CPU: Number of vCPU: 12
CPUアフィニティを検証するには、関連するESXiホスト上のsshセッション経由で以下のコマンドを実行します。
[root@esxi:~] tail -f /var/log/vmkernel.log | grep "exclusive affinity"
YYYY-MM-DDTHH:MM:SS vmkernel: cpu6:891115)CpuSched: vm xxxxxx: 2813: unset exclusive affinity to 6YYYY-MM-DDTHH:MM:SS vmkernel: cpu8:891522)CpuSched: vm xxxxxx: 2813: set exclusive affinity to 8YYYY-MM-DDTHH:MM:SS vmkernel: cpu15:892677)CpuSched: vm xxxxxx: 2813: set exclusive affinity to 15YYYY-MM-DDTHH:MM:SS vmkernel: cpu10:893175)CpuSched: vm xxxxxx: 2813: set exclusive affinity to 10YYYY-MM-DDTHH:MM:SS vmkernel: cpu11:893173)CpuSched: vm xxxxxx: 2813: set exclusive affinity to 11
[root@esxi:~] tail -f /var/log/vmkernel.log | grep "exclusive affinity"
YYYY-MM-DDTHH:MM:SS cpu12:26997166)WARNING: CpuSched: 1324: Unable to apply latency-sensitivity setting to virtual machine <VM name>. No valid placement on the host.YYYY-MM-DDTHH:MM:SS cpu2:26997157)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 2YYYY-MM-DDTHH:MM:SS cpu18:26997167)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 18YYYY-MM-DDTHH:MM:SS cpu11:26997162)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 11YYYY-MM-DDTHH:MM:SS cpu1:26997163)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 1YYYY-MM-DDTHH:MM:SS cpu34:26997161)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 34YYYY-MM-DDTHH:MM:SS cpu39:26997153)CpuSched: vm xxxxxxxx: 2764: unset exclusive affinity to 39
詳細情報を取得するため、ESXiホスト上のsshセッションにて以下のコマンドを追加で実行可能です。
[root@esxi:~] sched-stats -t cpu -z "name:group:cpu:mode:affinity" | awk 'NR==1 || /vmx-vcpu/'
[root@esxi:~] sched-stats -t numa-pnode
[root@esxi:~] sched-stats -t numa-clients