Have you ever been in that meeting with the proprietary sales guy on one side and a bunch of Virtualization newbies on the other side ?
Usually the simplified discussion goes like this,
Customer : “We’re looking into virtualizing some of our servers , we already have some windows, and some Linux, Linux does Virtualization right ?”
SalesDroid, realizing he is going to miss out some license comission if he does’t spread some FUD quickly : “Oh great, we have some awesome products to deal with that”
Customer : “But can’t we allready do that with the RHEL/SLES we have ?”
SalesDroid: “Oh no, those platforms have some basic virtualization functionalitym, but they don’t have support for Windows, Live Migration, Memory Overcommit, they don’t have support Storage, no VLAN support etc”
Customer : “Oh we didn’t realize that… can you make us a quote for your product ?”
So you bump into these folks in the pub and they tell you why they opted for the commercial product, and you go like “What moron told you that” , Xen, KVM have all the features you just described ..
Afterall Xen Memory Overcommit is something you could replace with a small shellscript
but as of recently KSM is available in the standard Linux Kernel. As KVM Virtual Machine guests are just processes under linux that means that you can use this stock Linux feature to have your Virtual Machines benefit from the feature
In fact by having multiple processes share the same memory you create a memory overcommit feature for KVM so that it can make better use of the available memory. A according to Linux-KVM RedHat claims it has tested KSM with 600 Virtual Machines running on host with 48 cores and 256Gb Ram.
So now also KVM can tout this feature 😉 Hower the discussion stays if overcommit is the right thing to do, afterall there is it’s not a one size fits all discussion. Overcommitment cost performance, you’ll eventually end up swapping which is painful, and the last thing we want to see is the Out Of Memory Killer kick in action , so maybe it is better to cough up some more money for the memory afterall
ian woodstock says
“Afterall Xen Memory Overcommit is something you could replace with a small shellscript”
That’s not the case at all.
There’s no notion of memory sharing in Xen.
True it has ballooning and can page memory to disk but there’s nothing like memory page sharing.
There was a talk by Oracle’s Dan Magenheimer a year or so ago that talked about scripts to do ballooning but to date nothing has been implemented to automate this.
But remember ballooning is nothing like memory page sharing.
Right now only VMware and KVM has this feature.