Tip

Virtualization don'ts: Neglecting VM resource allocation

These days, server virtualization seems like a no-brainer, but maximizing the virtual machine-to-host ratio remains a top goal for many organizations. Logically, this makes sense, because improving these ratios provides cost savings by reducing hardware and licensing expenditures.

To do so correctly, however, you need to pay attention to the resource allocation of each virtual machine (VM). Otherwise, you may distribute

    Requires Free Membership to View

server resources inefficiently. To maximize your VM-to-host ratio, consider the following:

  • Establish VM resource baselines. Determine the amount of resources that certain workloads and applications require. In general, start conservatively because, down the road, it's harder to shift unutilized resources.
  • Work with your vendors. Understand how particular applications affect resource deployment. From there, incrementally add RAM, CPUs or disk space as necessary.

In general, appropriately sizing VM resources early on is critical not only in making a particular workload run efficiently but also in making your virtualization environment successful.

Establishing a VM resource benchmark

The premise behind a tiering structure is to establish a resource baseline for VMs running various types of software. By setting a baseline, it provides a way to predict how many VMs can be provisioned to a particular host.

In a previous article, I detailed how my organization tiers VMs in order to predict how many guests can fit in a hardware configuration. Below are the results for a physical host with two quad-core processors, 64 GB of RAM and approximately 1 TB of disk space, connected by 4 GB Fibre Channel.

 


 
Tier A virtual machines (VMs)
Tier B VMs
Tier C VMs
VMs per host
 
31
(1/2 RAM 2 GB host reserve)
20
(1/3 RAM 4 GB host reserve)
15
(1/4 RAM 4 GB host reserve>
CPU average utilization
 
5%
10%
20%
RAM utilization (max)
 
2 GB
3 GB
4 GB
Disk space utilization (max)
 
35 GB
50 GB
100 GB
Disk I/O
 
Low
Medium
Medium
Network average utilization
 
15%
15%
15%
Example workload
 
Web, print, file, small
application servers
Low transactional
databases,larger file
servers, medium
resource application servers
Database, terminal/Citrix,
larger application
servers, domain controller

Note: These tiers emerged from my work with Hyper-V. If you use another hypervisor, the results may differ. Regardless, the assertions are still valid.

Work with your vendors
For infrastructure servers, this is a particularly easy structure to follow. But for vendor applications, I may not follow their specifications when creating a VM teir. You should understand that a vendor's philosophy is to ensure that recommended hardware is not a hindrance to their application's performance; and at times, the recommended resources may be over-exaggerated.

So before you purchase an application, I would suggest having an open conversation with the vendor. Request for a real-world example of how their application works in a similar environment, or ask to speak with another customer currently running the application. From my experience, both scenarios enable me to allocate fewer resources than originally proposed – at times, by half the recommended amount.

This should not be taken as a rule, however. But the point is you can start your deployment with a less aggressive resource allocation than proposed. The beauty of server virtualization comes into play if you determine, through monitoring, that an application needs more resources, you can provide them in the amount of time it takes a system to reboot. While you should not intend to undercut the necessary resources for an application, this approach can help streamline the goals of your application, virtual environment and organization.

Ultimately, to maintain a healthy and efficient virtual environment, you need to monitor the resources of every VM periodically. Also, be prepared to discuss – or even confront -- vendors on the resources needed for your particular environment. Starting at an agreed-upon baseline and paying close attention to the tiers each VM fall into will help you predict the most efficient resource utilization of your host systems; thus, giving your virtual environment the best chance to be successful.

About the author:
Rob McShinsky is a senior systems engineer at Dartmouth Hitchcock Medical Center in Lebanon, N.H., and has more than 12 years of experience in the industry -- including a focus on server virtualization since 2004. He has been closely involved with Microsoft as an early adopter of Hyper-V and System Center Virtual Machine Manager 2008, as well as a customer reference. In addition, he blogs at VirtuallyAware.com, writing tips and documenting experiences with various virtualization products.

This was first published in September 2009

There are Comments. Add yours.

 
TIP: Want to include a code block in your comment? Use <pre> or <code> tags around the desired text. Ex: <code>insert code</code>

REGISTER or login:

Forgot Password?
By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy
Sort by: OldestNewest

Forgot Password?

No problem! Submit your e-mail address below. We'll send you an email containing your password.

Your password has been sent to:

Disclaimer: Our Tips Exchange is a forum for you to share technical advice and expertise with your peers and to learn from other enterprise IT professionals. TechTarget provides the infrastructure to facilitate this sharing of information. However, we cannot guarantee the accuracy or validity of the material submitted. You agree that your use of the Ask The Expert services and your reliance on any questions, answers, information or other materials received through this Web site is at your own risk.