IT resource management has traditionally relied on percentage calculations, but in virtual infrastructures, this approach can be a hindrance.
You may have started up Windows PerfMon, for example, to discover that CPU utilization is up more than 90% and steady. This use of PerfMon was great when operating systems and hosts had a direct, one-to-one linkage. Virtualization and the rise of private cloud computing mean that resource usage is no longer easy to determine by simple percentages. But many people don’t trust the alternative: simply adding up the megahertz and gigabytes.
Calculating resource supply
A common question about virtual machine (VM) resource management is, “If I’m not measuring VM resources based on percentages, how will I measure performance?” The answer lies in an evolved way of visualizing VM resources I like to call “resource economics.”
Resource economics relies on two economics terms you may have learned about in school: supply and demand. The idea with supply and demand for IT resource management, however, is ensuring that there’s always enough supply to meet the demand of your VMs. Each piece of hardware in your virtual infrastructure contributes a finite sum of resources: processing, memory, storage and networking.
All virtualization management tools provide you with this VM resource management information. In VMware vCenter, for example, you’ll find numbers representing the supplies of these VM resources inside the vCenter Client. The Summary tab of a vCenter cluster highlights the total CPU resources and memory available to that cluster (see Figure 1). You can view similar information in Hyper-V and Microsoft System Center Virtual Machine Manager (SCVMM).
When it comes to IT resource management, calculating the supply of VM resources is relatively easy. Simply add the amount of processing power of each host or cluster, then its amount of memory and so on to determine your capacity. And remember that adding more hardware means adding to the supply of VM resources.
Determining resource demands
Calculating demand requires slightly more effort. It’s not as easy to find this data in most management toolsets.
Demand represents the quantity of resources your VMs require to do their jobs. This number is ever-changing, increasing and decreasing as VMs process their workloads.
Again using the vCenter Client as an example, instantaneous counters under the Virtual Machines tab represent point-in-time CPU and memory demand (see Figure 2).
IT pros familiar with PerfMon often have trouble reading (or sometimes, trusting) this IT resource management information. PerfMon’s use of percentage-based counters has driven most IT pros to believe that CPU demand is exclusively a percentage-based metric, but focusing on the integer numbers presented by the vSphere Client and other tools makes calculating demand for VM resources much easier. Using information from the vCenter Client, you can add the host CPU processing power for each running VM to calculate CPU demand.
Resource utilization is a constantly changing metric, but most servers tend to operate with a relatively stable set of processes and activities. That stability should improve your confidence in these calculations. VCenter Guided Consolidation even comes with a report that shows fluctuations in resource usage. The report shows the anticipated CPU and memory use for the server, but it also shows a line graph that represents the change in use over time (see Figure 3). A straight-line graph means you don’t have to worry about much deviation from your resource-demand calculations.
If your environment lacks the supply to meet the demand of your virtual machines, VM performance suffers. Gathering IT resource management metrics over time also gives you an easy-to-follow trend line for determining when you’ll need to purchase more hardware for VMs. With virtualization hardware often being a capital expense, knowing that date well in advance ensures that you’ll always have the supply to meet your demands.