仮想化環境のボトルネックの検出Detecting bottlenecks in a virtualized environment

ここでは、パフォーマンスモニターを使用して監視する内容に関するヒントと、ホストまたは一部の仮想マシンが予期したとおりに動作しない場合に問題が発生する可能性がある場所を特定する方法について説明します。This section should give you some hints on what to monitor by using Performance Monitor and how to identify where the problem might be when either the host or some of the virtual machines do not perform as you would have expected.

プロセッサのボトルネックProcessor bottlenecks

ここでは、プロセッサのボトルネックを引き起こす可能性がある一般的なシナリオをいくつか紹介します。Here are some common scenarios that could cause processor bottlenecks:

  • 1つ以上の論理プロセッサが読み込まれていますOne or more logical processors are loaded

  • 1つ以上の仮想プロセッサが読み込まれていますOne or more virtual processors are loaded

ホストから次のパフォーマンスカウンターを使用できます。You can use the following performance counters from the host:

  • 論理プロセッサ使用率- \ Hyper-v ハイパーバイザー論理プロセッサ ( * ) \ % 合計実行時間Logical Processor Utilization - \Hyper-V Hypervisor Logical Processor(*)\% Total Run Time

  • 仮想プロセッサ使用率- \ Hyper-v ハイパーバイザー仮想プロセッサ ( * ) \ % 合計実行時間Virtual Processor Utilization - \Hyper-V Hypervisor Virtual Processor(*)\% Total Run Time

  • ルート仮想プロセッサ使用率- \ Hyper-v ハイパーバイザールート仮想プロセッサ ( * ) \ % 合計実行時間Root Virtual Processor Utilization - \Hyper-V Hypervisor Root Virtual Processor(*)\% Total Run Time

Hyper-v ハイパーバイザー論理プロセッサ ( _ total) \ % total Runtimeカウンターが90% を超えている場合、ホストは過負荷になります。If the Hyper-V Hypervisor Logical Processor(_Total)\% Total Runtime counter is over 90%, the host is overloaded. より多くの処理能力を追加するか、一部の仮想マシンを別のホストに移動する必要があります。You should add more processing power or move some virtual machines to a different host.

Hyper-v ハイパーバイザー仮想プロセッサ (VM Name: VP x) \ % Total Runtimeカウンタがすべての仮想プロセッサで90% を超えている場合は、次の操作を行う必要があります。If the Hyper-V Hypervisor Virtual Processor(VM Name:VP x)\% Total Runtime counter is over 90% for all virtual processors, you should do the following:

  • ホストが過負荷になっていないことを確認するVerify that the host is not overloaded

  • ワークロードがより多くの仮想プロセッサを利用できるかどうかを確認するFind out if the workload can leverage more virtual processors

  • 仮想マシンにさらに仮想プロセッサを割り当てるAssign more virtual processors to the virtual machine

Hyper-v ハイパーバイザー仮想プロセッサ (VM Name: VP x) \ % Total Runtimeカウンターがすべてではなく、一部の仮想プロセッサに対して90% を超えている場合は、次の操作を行う必要があります。If Hyper-V Hypervisor Virtual Processor(VM Name:VP x)\% Total Runtime counter is over 90% for some, but not all, of the virtual processors, you should do the following:

  • ワークロードがネットワークを集中的に使用する場合は、vRSS の使用を検討する必要があります。If your workload is receive network-intensive, you should consider using vRSS.

  • 仮想マシンで Windows Server 2012 R2 が実行されていない場合は、さらにネットワークアダプターを追加する必要があります。If the virtual machines are not running Windows Server 2012 R2, you should add more network adapters.

  • ワークロードが記憶域を集中的に使用する場合は、仮想 NUMA を有効にし、さらに仮想ディスクを追加する必要があります。If your workload is storage-intensive, you should enable virtual NUMA and add more virtual disks.

Hyper-v ハイパーバイザールート仮想プロセッサ (ルート VP x) \ % Total Runtimeカウンターが、一部ので90% を超えている場合、ただし、すべての仮想プロセッサとプロセッサ (x)% \ Interrupt time および processor (x)% \ DPC Timeカウンターは、ルート仮想プロセッサ (ルート VP x) の \ 合計ランタイムカウンターの値に約加算されるのではなく、ネットワークアダプターで VMQ を有効にする必要があります。If the Hyper-V Hypervisor Root Virtual Processor (Root VP x)\% Total Runtime counter is over 90% for some, but not all, virtual processors and the Processor (x)\% Interrupt Time and Processor (x)\% DPC Time counter approximately adds up to the value for the Root Virtual Processor(Root VP x)\% Total Runtime counter, you should ensure enable VMQ on the network adapters.

メモリのボトルネックMemory bottlenecks

次に、メモリのボトルネックの原因となる可能性がある一般的なシナリオをいくつか示します。Here are some common scenarios that could cause memory bottlenecks:

  • ホストが応答していません。The host is not responsive.

  • 仮想マシンを起動できません。Virtual machines cannot be started.

  • 仮想マシンのメモリが不足しています。Virtual machines run out of memory.

ホストから次のパフォーマンスカウンターを使用できます。You can use the following performance counters from the host:

  • \使用可能なメモリ (mb)Memory\Available Mbytes

  • Hyper-v 動的メモリバランサー () の * \ 使用可能なメモリHyper-V Dynamic Memory Balancer (*)\Available Memory

仮想マシンから次のパフォーマンスカウンターを使用できます。You can use the following performance counters from the virtual machine:

  • \使用可能なメモリ (mb)Memory\Available Mbytes

使用 ** \ 可能** なメモリ (Mb ) と hyper-v 動的メモリバランサー ( * ) の \ 使用可能なメモリ カウンターがホストで低い場合は、重要ではないサービスを停止し、1つまたは複数の仮想マシンを別のホストに移行する必要があります。If the Memory\Available Mbytes and Hyper-V Dynamic Memory Balancer (*)\Available Memory counters are low on the host, you should stop non-essential services and migrate one or more virtual machines to another host.

仮想マシン で \ 使用可能なメモリ (mb ) カウンターが不足している場合は、仮想マシンにより多くのメモリを割り当てる必要があります。If the Memory\Available Mbytes counter is low in the virtual machine, you should assign more memory to the virtual machine. 動的メモリを使用する場合は、[最大メモリ] 設定を増やす必要があります。If you are using Dynamic Memory, you should increase the maximum memory setting.

ネットワークのボトルネックNetwork bottlenecks

ネットワークのボトルネックを引き起こす可能性がある一般的なシナリオを次に示します。Here are some common scenarios that could cause network bottlenecks:

  • ホストはネットワークにバインドされています。The host is network bound.

  • 仮想マシンはネットワークにバインドされています。The virtual machine is network bound.

ホストから次のパフォーマンスカウンターを使用できます。You can use the following performance counters from the host:

  • ネットワークインターフェイス (ネットワークアダプター名) \ バイト数/秒Network Interface(network adapter name)\Bytes/sec

仮想マシンから次のパフォーマンスカウンターを使用できます。You can use the following performance counters from the virtual machine:

  • Hyper-v Virtual Network アダプター (*仮想マシン名名 < GUID > *) \ バイト/秒Hyper-V Virtual Network Adapter (virtual machine name name<GUID>)\Bytes/sec

PHYSICAL NIC Bytes/secカウンタの容量が90% 以上の場合は、追加のネットワークアダプターを追加し、バーチャルマシンを別のホストに移行して、ネットワーク QoS を構成する必要があります。If the Physical NIC Bytes/sec counter is greater than or equal to 90% of capacity, you should add additional network adapters, migrate virtual machines to another host, and configure Network QoS.

Hyper-v Virtual Network Adapter Bytes/secカウンターが 250 MBps 以上の場合は、追加のチーム化されたネットワークアダプターを仮想マシンに追加し、vRSS を有効にし、sr-iov を使用する必要があります。If the Hyper-V Virtual Network Adapter Bytes/sec counter is greater than or equal to 250 MBps, you should add additional teamed network adapters in the virtual machine, enable vRSS, and use SR-IOV.

ワークロードがネットワーク待機時間を満たせない場合は、SR-IOV を有効にして仮想マシンに物理ネットワークアダプターリソースを提示します。If your workloads can't meet their network latency, enable SR-IOV to present physical network adapter resources to the virtual machine.

記憶域のボトルネックStorage bottlenecks

記憶域のボトルネックの原因となる一般的なシナリオをいくつか次に示します。Here are some common scenarios that could cause storage bottlenecks:

  • ホストおよびバーチャルマシンの操作が低速またはタイムアウトになっています。The host and virtual machine operations are slow or time out.

  • 仮想マシンの遅延が遅い。The virtual machine is sluggish.

ホストから次のパフォーマンスカウンターを使用できます。You can use the following performance counters from the host:

  • 物理ディスク (ディスク文字) \ の平均ディスク読み取り秒数Physical Disk(disk letter)\Avg. disk sec/Read

  • 物理ディスク (ディスク文字) \ の平均ディスク書き込み秒数Physical Disk(disk letter)\Avg. disk sec/Write

  • 物理ディスク (ディスク文字) \ の平均ディスク読み取りキューの長さPhysical Disk(disk letter)\Avg. disk read queue length

  • 物理ディスク (ディスク文字) \ のディスク書き込みキューの長さの平均Physical Disk(disk letter)\Avg. disk write queue length

待機時間が常に50ミリ秒を超える場合は、次の操作を行う必要があります。If latencies are consistently greater than 50ms, you should do the following:

  • 追加のストレージに仮想マシンを分散Spread virtual machines across additional storage

  • 高速ストレージの購入を検討するConsider purchasing faster storage

  • Windows Server 2012 R2 で導入された Tiered Storage のスペースを検討してください。Consider Tiered Storage Spaces, which was introduced in Windows Server 2012 R2

  • Windows Server 2012 R2 で導入された記憶域 QoS の使用を検討してください。Consider using Storage QoS, which was introduced in Windows Server 2012 R2

  • VHDX を使用するUse VHDX

その他の参照情報Additional References