Memory Overcommitment. Bluff or Real Requirement?

In my humble opinion, yes, it does. Now let me explain why.

As a real world example, you guys have us, WTSLabs. When we decided to move to a virtual world, I personally looked at most of the offerings available: Microsoft Hyper-V 2008 R2, Citrix XenServer and VMWare ESXi (considering our size, free would do the trick for us for sure). The deciding factor that took us down the VMWare ESXi route was the simple fact it can overcommit memory.

Once you look at how our VMs were performing, most of the time these were sitting idle, consuming few resources (that was the case with our environment – your environment may be completely different and in that case overcommitment may not be for you).

No matter what anyone else says, if you all remember, years ago one of the main driving factors (or sales pitch if you will) towards virtualization was to consolidate your X physical servers into a bunch of physical hosts. I remember seeing several times Sales/Pre-sales guys going to offices explaining that most of the time the customers servers were there doing nothing and thanks to that, bringing all these ‘idle’ servers under one single host was possible.

I am not saying that is the case with any server and/or any environment. For sure there are several SQL, Exchange boxes out there that are always being hammered, working hard. But for tons of companies out there, especially in the SMB market, it is almost guaranteed that is not the case.

Back to our own scenario here, we now run 6 VMs. The resource hog one is our Exchange 2007 SP2 box (what a surprise…) setup with 4GB. Then we have one domain controller, web server, TS (running Windows Server 2008 R2) and two XP VMs. By monitoring these up and running on a regular day they are indeed idle most of the time, not using many resources. I do not remember all the numbers but I know we are overcommiting memory but not by a lot (probably one to two gigs – our Dell Server has 8GB).

Like WTSLabs there are many other companies out there on the same boat. And for these, if you cannot overcommit this may mean buying another server. For large enterprises another box may be just a drop in the ocean. Not for us. 🙂

Performance wise, nothing to complain so far; everything works great and seems responsive. To me, the reality is there will be cases where overcommitment is indeed not a good idea and there could be performance issues if used. But on the other hand, there will be way more cases where overcommitment will not be an issue and everything will work great, saving companies money.

The reason why Microsoft and Citrix as of today downplay memory overcommitment and all the technologies behind it (you can read more here) in my mind is simple: they do not have it.

Will they add that? I am pretty sure they will and if they do there will be two possible reasons for that:

1. They added a feature they consider useless just because they are right and the world is wrong.
2. Added it because it is really important and useful.

I will go with the second option. And once they do it I may take a look at Hyper-V and XenServer again for our needs.


4,242 total views, no views today