Virtualization Counters
[Este tópico está em andamento.]
Tópico modificado em: 2010-01-25
The following table shows Hyper-V counters.
Counter | Description | Threshold | Troubleshooting |
---|---|---|---|
Hyper-V Virtual Machine Health Summary\Health OK |
Shows that the host server is running as expected. |
Should be 1 at all times |
|
Hyper-V Virtual Machine Health Summary\Health Critical |
Shows the percentage of processor time that is spent in guest code. This is used to measure the total processor utilization for all virtual machines running on the host server. This value is equal to the sum of the Hyper-V Hypervisor Root Virtual Processor\% Guest RunTtime and Hyper-V Hypervisor Virtual Processor\% Guest Run Time counters. |
Should remain below 65%. |
If you see a value of 1, then the server is in a critical state and you should conduct a further investigation to determine the exact issue. |
The following table shows Hyper-V processor counters.
Counter | Description | Threshold | Troubleshooting |
---|---|---|---|
Hyper-V Hypervisor Logical Processor\% Guest Run Time |
Shows the percentage of processor time that is spent in guest code. This is used to measure the total processor utilization for all virtual machines running on the host server. This value is equal to the sum of the Hyper-V Hypervisor Root Virtual Processor\% Guest RunTtime and Hyper-V Hypervisor Virtual Processor\% Guest Run Time counters. |
Should remain below 65%. |
There is one logical processor that that carries more load than the rest and that is LP0. This LP is where all interrupts in the system are directed and if there is too much load you can see this LP hit 100% which likely means IO is a bottleneck in the system. There are some technologies in Windows Server 2008 R2 that help reduce the load for networking and those are – VMQ, Chimney and RSS. There is no RSS support in guest virtual machines. |
Hyper-V Hypervisor Logical Processor\% Hypervisor Run Time |
Shows the percentage of processor time that is spent in hypervisor code. This is used to measure the total processor utilization of the hypervisor for the entire system. |
Should remain below 5%. |
|
Hyper-V Hypervisor Logical Processor\% Idle Run Time |
Shows the percentage of processor time that is spent in an idle state. This is used to measure the idle processor for the entire system. |
Should remain above 30%. |
|
Hyper-V Hypervisor Logical Processor\% Total Run Time |
Shows the percentage of processor time that is spent in guest and hypervisor code. This is used to measure the total processor utilization for hypervisor and all virtual machins running on the host server. |
Should remain below 70%. |
|
Hyper-V Hypervisor Virtual Processor\% Guest Run Time |
Shows the percentage of virtual processor time that is spent in guest code for a specific virtual machine. |
Should remain below 65%. |
|
Hyper-V Hypervisor Virtual Processor\% Hypervisor Run Time |
Shows the percentage of processor time that is spent in hypervisor code for a specific virtual machine. |
Should remain below 5% |
|
Hyper-V Hypervisor Virtual Processor\% Idle Run Time |
Shows the percentage of processor time that is spent in an idle state for a specific virtual machine. |
Should remain above 30%. |
|
Hyper-V Hypervisor Virtual Processor\% Total Run Time |
Shows the percentage of processor time that is spent in guest and hypervisor code for a specific virtual machine. |
Should remain below 70%. |
|
Hyper-V Hypervisor Root Virtual Processor\% Guest Run Time |
Shows the percentage of time used by virtual processor in guest code. This is used to determine the processor utilization of the virtualization stack on the host server. |
Should remain below 5%. |
|
Hyper-V Hypervisor Virtual Processor\% Hypervisor Run Time |
Shows the percentage of time used by the virtual processor in hypervisor code. This is used to determine the processor unitization by the hypervisor that is used by the host (i.e. not specific to any virtual machines). |
Should remain below 5%. |
The following table shows common Hyper-V memory counters.
Counter | Description | Threshold | Troubleshooting |
---|---|---|---|
Memory\Available MBytes |
Available megabytes is the amount of physical memory, in megabytes, immediately available for allocation to a process or for system use. This will give you an idea of how much memory is remaining for guests. There is a reserve of 256MBytes or 512MBytes or 2048Bytes that the root will always leave outside of guest memory. The exact amount varies depending on Hyper-V release. So if you find a time when a VM wont start it may be there are too few available bytes to satisfy the reserve. |
Should be greater than 2MB. |
|
Memory\Pages/sec |
Pages/sec is the rate at which pages are read from or written to disk to resolve hard page faults. This is a measure of memory pressure since it tracks hard faults. Those are page faults that require a disk access. Usually the cause for the number to spike is when there are two few available bytes on the system and processes are competing with each other for physical RAM. |
Not applicable. |
|
Hyper-V VM Vid Partition\Physical Pages Allocated |
Shows the total number of guest pages and VID pages needed to manage the virtual machine. |
Not applicable. |
|
Hyper-V VM Vid Partition\Remote Pages Allocated |
On NUMA based systems, this shows if a virtual machine is spanning multiple nodes. |
Not applicable. |
You want to avoid this whenever possible. You can require a VM to start off a particular node by using the API at https://blogs.msdn.com/tvoellm/archive/2008/09/28/Looking-for-that-last-once-of-performance_3F00_-Then-try-affinitizing-your-VM-to-a-NUMA-node-.aspx. Another way is to stop and restart the VM and if possible Hyper-V will allocate all memory on a single NUMA node. |
Hyper-V Hypervisor [ROOT] Partition\1G GPA Pages |
Shows the number of 1G pages present in the GPA space of the partition. This indicates whether or not a VM is using large pages which improves overall VM performance. |
Not applicable. |
Large pages are only used on systems that have vTLB hardware support. See more on vTLB at https://blogs.msdn.com/tvoellm/archive/2009/04/06/why-does-my-desktop-box-slowdown-when-i-install-hyper-v.aspx. |
Hyper-V Hypervisor [ROOT] Partition\2M GPA Pages |
Shows the number of 2M pages present in the GPA space of the partition. This indicates whether or not a VM is using large pages which improves overall VM performance. |
Not applicable. |
Large pages are only used on systems that have vTLB hardware support. See more on vTLB at https://blogs.msdn.com/tvoellm/archive/2009/04/06/why-does-my-desktop-box-slowdown-when-i-install-hyper-v.aspx. |
Hyper-V Hypervisor [ROOT] Partition\Deposited Pages |
Shows the number of pages deposited into the partition. This indicates how much memory the hypervisor is using for managing the VM. |
Not applicable. |
The following table shows common Hyper-V network counters.
Counter | Description | Threshold | Troubleshooting |
---|---|---|---|
Network Interface(*)\Bytes Total/sec |
Indicates the rate at which the network adapter is processing data bytes. This counter includes all application and file data, in addition to protocol information such as packet headers. |
For a 100-MBps network adapter, should be below 6–7 Mbps. For a 1000-Mbps network adapter, should be below 60–70 Mbps. |
|
Network Interface(*)\Packets Outbound Errors |
Indicates the number of outbound packets that could not be transmitted because of errors. |
Should be 0 at all times. |
|
TCPv4\Connection Failures |
Shows the number of times TCP connections have made a direct transition to the CLOSED state from the SYN-SENT state or the SYN-RCVD state, plus the number of times TCP connections have made a direct transition to the LISTEN state from the SYN-RCVD state. |
An increasing number of failures, or a consistently increasing rate of failures, can indicate a bandwidth shortage. |
|
TCPv6\Connection Failures |
Shows the number of times TCP connections have made a direct transition to the CLOSED state from the SYN-SENT state or the SYN-RCVD state, plus the number of times TCP connections have made a direct transition to the LISTEN state from the SYN-RCVD state. |
An increasing number of failures, or a consistently increasing rate of failures, can indicate a bandwidth shortage. |
|
TCPv4\Connections Reset |
Shows the number of times TCP connections have made a direct transition to the CLOSED state from either the ESTABLISHED state or the CLOSE-WAIT state. |
An increasing number of resets or a consistently increasing rate of resets can indicate a bandwidth shortage. |
Some browsers send TCP reset (RST) packets, so be cautious when using this counter to determine reset rate. |
TCPv6\Connections Reset |
Shows the number of times TCP connections have made a direct transition to the CLOSED state from either the ESTABLISHED state or the CLOSE-WAIT state. |
An increasing number of resets or a consistently increasing rate of resets can indicate a bandwidth shortage. |
Some browsers send TCP reset (RST) packets, so be cautious when using this counter to determine reset rate. |
Hyper-V Virtual Switch\Bytes/sec |
This counter represents the total number of bytes that have traversed the network adapter. |
Not applicable. |
|
Hyper-V Virtual Switch\Packets/sec |
This counter represents the total number of bytes received per second by the network adapter. |
Not applicable. |
|
Hyper-V Virtual Network Adapter\Bytes/sec |
This counter represents the total number of bytes per second traversing the virtual switch. |
For a 100-MBps network adapter, should be below 6–7 Mbps. For a 1000-Mbps network adapter, should be below 60–70 Mbps. |
|
Hyper-V Virtual Network Adapter\Packets/sec |
This counter represents the total number of packets per second traversing the virtual switch. |
Not applicable. |