ProxMox Virtualization Hybrid of OpenVZ & KVM

by Rusty Meyners.  

OK, so you want my view on ProxMox, OpenVZ or KVM? Maybe even VMware, Xen & Virtuozzo?

Yes, someone really did ask, earlier this evening on Twitter.

First, I’ve no experience with OpenVZ or KVM as stand-alone; because ProxMox does both and gets you off to a fast and easy start. This does assume that you have some "big-iron" because ProxMox only installs on 64 bit bare metal and uses the whole drive array, though there are work-arounds to make use of the extra drive space if you need to.

I do have experience with VMWare Server and also ESXi but only after each became free, as well as a brief spinup of Xen and a significant period with Virtuozzo. Still can’t do without VMWare Server and Converter for utility, though my production stuff is almost always on ProxMox. Most of the hypervisors (even bare metal) are more or less free these days because the money is deemed to be in the management programs. Virtuozzo is a nice and unique product that unfortunately is far from free and probably will remain so until Microsoft becomes Open Source; and I would still be using it if it had come out with support for Server08 sooner.

OpenVZ is the Linux equivilent of what Virtuozzo does for Windows with an approach that partitions the operating system on top of a shared kernel, rather than virtualizing any hardware, which is where the processing and I/O overhead are lost. OS partitions are referred to as containers, rather than machines, and the term Virtual Environment is an umbrella for both types of virtualization; hence the VE on the end of "ProxMox VE".

Almost a year ago, I was deciding which way to go with heavy production, having only used VMWare Server and knowing I needed a bare metal solution cheaper than ESX (which has since become free), so it appeared Xen was the way to go, with it’s reputation of low overhead with the more efficient "para"-virt approach. Cranked up the Dell edition of Xen Express on new Dell hardware, because the free-version restrictions were slighlty more generous than the regular Citrix offer, and Dell had an interesting way of booting from an internal USB key and calling it "embedded".

Shortly after spinning up Xen and booting a new Server08 on it, an associate alerted me to a very interesting, though obscure Open Source product called ProxMox that we just had to try. Since I had a twin of the Dell 2950 running the Xen, we had the perfect opportunity to run a comparison. Installed an identical Server08 on a KVM in the ProxMox and did a PCPitstop test on both. I’m sure there are more sophisticated benchmarks but the bottom line was that, yes Xen was awesome on CPU efficiency but it was lousy on hard drive access and the ProxMox wasn’t bad on CPU while it blew away the Xen on drive access. One of the new Dells was intended for Linux and the other for Windows, so OpenVZ seemed like a no-brainer since Virtuozzo experience showed the container concept more or less undisputed for efficiency, leaving a decision on full or para-virtualization for the Windows box. KVM started looking real good and the hybrid approach sounded even better with the promise of the clustering, migration and management features.

The first production "machine" on ProxMox was for a Moodle, so VZ was the natural fit and of course that means it was a VE "container" (though the term machine is hard to drop); however significant Windows loads have been running on several KVM machines, ranging from media streaming & file serving to (believe it or not) MS Terminal Services.

The best part of a year has gone by and since then ESXi has become free and had its’ chance to compete with ProxMox as a host for Terminal Servers and others. It’s a great product with a wide range of features and a plethora of configuration options that ProxMox will never catch up with, but in the end we retired it and committed to ProxMox. Chances are, we may have some slightly older hardware around that will see some ESXi action but only because ProxMox VE will only run on 64 bit.

ProxMox VE uses a minimal installation of CentoOS or Debian (I think – should confirm) as it’s base and you are able to install other programs on it after it is running. Many basics are missing because they are not needed to begin using it for virtualization but it does have apt-get and you can quickly add wget. Since my Linux skills are somewhat light, this is the point where I put WebMin on it; because that wonderful package is what lets a Microsoft immigrant sleep at night when he starts putting vital services on Linux.

For those who gripe about ProxMox using the whole drive array, I have two answers. One, install a guest OS to host the space as network storage; and (or) two, use WebMin to manage the drive space.

Once you have ProxMox going, you will find plenty of reasons to crank up additional "machines". Because it is so easy to test new systems, it has been a snap to try out great stuff like BackupPC and Joomla, DimDim Server (just today) and hopefully soon, a FOG server and various security and firewall appliances.

Oops, I just remembered – the DimDim server was actually a pre-packaged appliance that I setup on VMware player to get it going quicker and will put it in a VZ container later. Just goes to show, that you still can’t do without some of the free VMware stuff like Server, Player and especially Converter. ProxMox has a wiki with instructions for P2V migration using VMware Converter, that I couldn’t do without.


Leave a Reply