Back to article
Build a High-Powered Ubuntu Linux Workstation (part 3)
Virtualize Everything-- If Your Hardware Can Handle it
October 15, 2009
In the first two parts of this series we focused a great deal on the hardware. Rightly so since you need good hardware properly configured for any solid workstation solution. Once you have all that figured out you must make some decisions regarding what software to install. It really does seem like a waste of good CPU cycles to just install a vanilla desktop Linux distribution. This final installment will look at several potential choices for the base operating system and in detail at what we finally settled on.
Before you start burning install DVDs it's probably a good idea to come up with a list of things you want your operating system to do. In our case the biggest single requirement was the ability to do virtualization, or running multiple operating systems on the same hardware at the same time. This doesn't really narrow things down very well. In fact, it opens up a number of options to consider from both the open source world and free (as in VMware's ESXi and Citrix's XenServer) for personal use.
Choices and Challenges
When you take a look at the choices available for virtualization software, you'll find they can be broken down into several categories. The first and simplest choice is to use a basic emulation tool like QEMU or VMware Player. Both offer versions that run on all the popular Linux distributions and support a multitude of guest operating systems. VMware probably has the edge in terms of ready-to-go virtual images (or appliances) you can just download off the Internet and run.
Both of these options use a hosted virtualization approach, meaning there is a software application running behind the scenes taking care of the interface between the virtual machine and the actual hardware. This can slow things down a bit especially in disk or network intensive operations.
The second group of options is characterized by the ability to run directly on the underlying hardware. This approach uses what's called a hypervisor to manage multiple virtual machines at the same time. It typically requires hardware with special virtualization support found in the latest Intel and AMD processors. Many off-the-shelf systems come with this option disabled in the BIOS, so you'll have to enable it to get things to work.
Candidates for this group include VMware's ESXi, Citrix's XenServer and others. The obvious advantage to this group is the ability to run directly on the hardware. You would want to choose one of these options for running multiple server instances on the same box. This works really well for server consolidation, isolation and the whole backup / restore process. Each virtual machine uses a single image file that can easily be backed up to an external storage device relatively quickly.
There are a few downsides to this approach. We ran into some trouble when trying to install both VMware's ESXi and Citrix's XenServer. The issue can probably be traced to hardware compatibility. VMware has a pretty extensive list of compatible systems including specific motherboards and other hardware. You can search for your system on their Compatibility Guide web site. Alas, our shiny new gaming motherboard didn't make the list.