Just a quick note on monitoring overall Hyper-V host processor utilization. You may be tempted to monitor Processor \ % Processor Utilization…but this would be incorrect.
Why? For purposes of measuring processor utilization, the host operating system is logically viewed as just another guest operating system. Therefore, the “\Processor(*)\% Processor Time” monitor counter measures the processor utilization of the host operating system only. To measure total physical processor utilization of the host operating system and all guest operating systems, use the “\Hyper-V Hypervisor Logical Processor(_Total)\% Total Run Time” performance monitor counter. This counter measures the total percentage of time spent by the processor running the both the host operating system and all guest operating systems.
Which counters are most important?
When it comes to Hyper-V performance, Tony Voellm (Microsoft) is the master and he has compiled a great explanation of how to dig deep into Hyper-V performance using the Hyper-V related performance objects and counters in PerfMon.
Tony’s top performance counters are
Here are the top level performance counters to monitor and I’ll go into more detail on each;
- Overall health:
- Hyper-V Virtual Machine Health Summary
- Hyper-V Hypervisor
- Hyper-V Hypervisor Logical Processor
- Hyper-V Hypervisor Root Virtual Processor
- Hyper-V Hypervisor Virtual Processor
- Hyper-V Hypervisor Partition
- Hyper-V Root Partition
- Hyper-V VM Vid Partition
- Network Interface
- Hyper-V Virtual Switch
- Hyper-V Legacy Network Adapter
- Hyper-V Virtual Network Adapter
- Physical Disk
- Hyper-V Virtual Storage Device
- Hyper-V Virtual IDE Controller
What thresholds are appropriate?
Visit Tony’s blog directly and settle in for a great read on analyzing Hyper-V performance.