Tip

Optimizing resources with vSphere memory management techniques

Using memory management techniques to optimize available resources helps ensure the success of your VMware vSphere environment. VMware vSphere offers several ways to enable memory over-allocation and, in turn, sets up efficient resource use.

Advanced techniques for vSphere memory management

    Requires Free Membership to View

such as transparent page sharing, memory ballooning, swapping and memory compression allow admins to run as many virtual machines (VMs) as possible on a host. They permit the total amount of RAM required by the VMs to exceed the amount of physically available RAM on the host.

These memory management techniques allow VMs to continue to work and prevent the VMs from ever knowing you have allocated more than the available memory.

Transparent page sharing and memory ballooning

More resources on vSphere 5 features

New storage management functionality, vSphere Storage Appliance

Top 5 security features in VMware vSphere 5

Five exciting VMware networking features in vSphere 5

In transparent page sharing (TPS), the hypervisor analyzes a VM's activity and identifies similar memory pages among other VMs on the host. If the hypervisor discovers identical or redundant memory pages on different VMs, it will share these pages with those VMs and set pointers to the memory blocks. TPS is extremely useful if you run the same operating system (OS) on multiple VMs because that OS will load the same files multiple times.

In addition to TPS, vSphere uses memory ballooning to optimize memory usage. To use this memory management technique, you need to install a special balloon driver in the VM. This driver is part of the VMware Tools that admins install on a specific VM. The hypervisor uses the driver to reclaim unused memory from a VM but avoids reclaiming memory from a VM already short on memory. 

Because the balloon driver is installed in the guest OS, it knows the specific memory needs of that operating system. If the host OS is short on memory, it can poll all balloon drivers on other VMs within the host to request available memory and, in turn, grant that memory to VMs. With the balloon driver in the guest, or virtualized OS, it will not rob any VMs of the memory they need.

Alternative memory management techniques

If memory ballooning and transparent page sharing don’t optimize resource usage for a particular vSphere environment, the hypervisor will enable swapping. With this memory management technique, the hypervisor reclaims used memory pages and stores them on a swap file. Disk-based storage is much slower than physical RAM storage, so swapping severely limits VM performance and is not a desirable way to optimize resource usage.

Alternatively, the hypervisor can enable memory compression, where it attempts to compress memory pages. If a page can be compressed to at least 50% of its original size, it is stored in a memory cache for compressed pages. The host only considers memory compression if it is out of memory and would otherwise need to start swapping memory. Memory compression does not impede the performance of an ESXi host the way swapping does.

Even if the hypervisor uses the vSphere memory management techniques, it will not know which VMs are the most important to your environment. As such, vSphere admins must also use memory optimization techniques such as reservations, limits and shares, which I will explain in a follow up to this article.

This was first published in September 2012

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:

Expert Discussion

Which memory management technique intrigues you most?

Sander van Vugt
What's your opinion?
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

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.