vSphere 6 comes with many counters, many more than what a physical server provides. There are new counters that do not have a physical equivalent, such as memory ballooning, CPU latency, and vSphere replication. In addition, some counters have the same name as their physical-world counterparts but behave differently in vSphere. Memory usage is a common one, resulting in confusion among VMware system administrators. For those counters that are similar to their physical-world counterparts, vSphere may use different units, such as milliseconds instead of percentage.
vSphere has many objects. It is important that you pick the right counters for each object. In Chapter 10, Application Monitoring Using Blue Medora, to Chapter 13, Memory Counters, we're dedicating over 100 pages to covering all the counters.
As a result, experienced IT administrators find it hard to master vSphere counters by building on their existing knowledge. Instead of trying to relate each counter to its physical equivalent, it is useful to group them according to their purpose. There are two main purposes:
Performance
Capacity
For performance, the key counter is VM contention. A VM will experience suboptimal performance when it is experiencing contention.
For capacity, the key counter is workload. Workload is more than just utilization. The main limitation of utilization is it does not reflect the true demand. If a VM wants to use 80 percent of its CPU but ESXi can only deliver 50 percent, the utilization counter will show 50 percent. The workload counter takes into account the unmet demand and will show 80 percent.
I've listed all the vSphere objects in the following table. For each object, a No under the Contention counter column means you will not find a counter named Contention for that object. The same goes for the Workload counter column. This is because the Contention counter and Workload counter do not exist for all objects. For example, a distributed switch does not have a Contention counter, but it does have a Workload counter.
When there is no actual counter called Contention or Workload, you can use other counters as a workaround. For example, you can use Latency (millisecond) as a replacement for Contention (%).