Bookmark and Share

Choosing virtualization solution

Posted: Thursday, January 22nd, 2009 at 12:46 amUpdated: Friday, January 30th, 2009 at 10:09 pm

Given the virtualization knowledge I have as explained on the previous page, now it’s time to choose which one is good for my server and my laptop.

Virtualization for Server

For my server solution, my goals are:

  • To utilize my 1U dual Opteron system with 8GB CPU to the max.
  • To minimize hosting cost as much as possible. I wanted to have a clean data center architecture with separate web hosting, separate database server and separate email server
  • To have very low (read $0) costs in start up and total cost of ownership for virtualization solution

My server has an older Opteron that doesn’t support AMD-V yet. Thus KVM is out of the contention from the get go. Thus, there are only 2 solutions that I was heavily considering: VMWare’s ESXi and Xen. They both meet my goal of $0 start up cost. I’ll explain more on the ins and outs virtualization solution.

Out of contention virtualization solutions

The following virtualization solutions quickly went out of contention to be considered as my virtualization solution. Here’s the list and a brief reasons.

  • VirtualBox – Never made it into consideration as I think it’ll be too show and IMHO, it is designed to compete with VMWare Workstation. I don’t think it’s a server class solution.
  • KVM – I never consider this because my CPU doesn’t have support for virtualization yet. Also, I think it’s a newer solution. I’m gonna let it simmer for a while before putting it into production environment

Runner up : VMWare ESXi

VMWare’s ESXi is a free version of VMWare’s ESX server. According to VMWare’s website ESXi runs “all your production applications at near-native performance … VMware ESXi has the same functionality and performance as VMware ESX but with a 32 MB disk footprint.”. What I like about VMWare ESXi is that it is free and it doesn’t require any OS to be loaded (bare metal). In virtualization speak, bare metal means the virtualization solution doesn’t need any OS to be loaded for it to run. Once you boot, it goes into the virtualization solution directly. The advantage of doing that is smaller footprint on the virtualization solution and as a result, you have more hardware resources to be allocated to your virtualized guests OS.

My friend in Melbourne, Australia works in a company that provides solutions using VMWare. Off course they have all the best commercial version of VMWare. He swears on how easy it is and how seamless the management of servers virtualized on VMWare. For example, if he needs to do maintenance on a particular hardware, he can simply move the VM to another hardware temporary and work on the physical hardware then move it back — all without interruption of service to the customer.

I was really considering VMWare ESXi since it’s free. However, there are a few things that makes me shying away from it.

  • I wasn’t sure how easily I can manage VMWare ESXi from remote without their commercial management tools. VMWare is giving away ESXi for free. However, they do charge for management tools.
  • I plan to only have 1 physical server placed in a remote data center somewhere. I’m not too familiar with ESXi. It being a bare metal solution has pretty much no console. Everything is managed from remote. I’m not sure if I’m ready for it yet. I still like the idea to be able to login to console from remote and do stuff.

So, despite my friend’s thumbs up suggestion of VMWare solution, I had to shy away from it for now. I may reconsider it once I grow bigger.

Winner: Xen hypervisor

From Xen.org website, “The Xen® hypervisor, the powerful open source industry standard for virtualization, offers a powerful, efficient, and secure feature set for virtualization of x86, x86_64, IA64, PowerPC, and other CPU architectures”. I’ve known about Xen solution since 2004, I think. I’ve read the literature about it and was very excited to have virtualization solution capable of running near native performance on guest OS. However, until I setup my server, I’ve never experienced setting up Xen.

Once I narrow down to 2 solutions (VMWare ESXi and Xen), I made comparison about the 2 solutions. For my purpose, Xen and VMWare ESXi pretty much satisfies my needs. They both doesn’t require CPU supported virtualization. They both are free. VMWare ESXi has advantage of running as bare metal, while Xen needs an OS to be installed. However, Xen has better management for free while VMWare requires you to buy a license. The other down side of Xen is that it can only be run in Linux (without CPU virtualization support). However, that is fine for now as I don’t plan running OS other than Linux. (Actually, I’d love to be able to run FreeBSD, however FreeBSD port of Xen is not that good at the time of my building the server).

So in short, I choose Xen over VMWare because of the one reason, that is the management side of it. I don’t really want to use a “2nd class” management tools with VMWare’s solution and I’m not ready to spend $$$ for their proper management tools. Moreover, almost everything else ESXi has Xen also has. The only lack of Xen is the requirement of having an OS installed. However, that can be easily countered with a minimalistic installation and configuration of a Linux distribution. Granted that in all likely hood that it won’t beat or match the 32MB footprint of ESXi, but I think I can live with it for now.

Pages: 1 2 3

Leave a Reply

Security Code: