DIY virtual machines: Rigging up at home

Sysadmin blog A brief look at virtual machines for home use resulted in several requests for system specifications and configuration details. It seems some of you would like to take a go at replicating my setup.

None of this is cutting edge or top-of-the-line stuff. It was all fairly middling when I bought it some time early on in 2011. Most of it was on sale at the time, and the total system cost was around $750. You could save yourself a fair amount of money by not trying to build your virtual server on a mini-ITX motherboard. Micro-ATX is plenty small, cheaper, and usually offers 4 full-sized DIMM slots.

I have had my Personal Virtual Machine (PVM) for about seven years now. I won a retail boxed version of Windows XP way-back-when, spent the license on the VM, and dragged that VM from virtualization platform to virtualization platform over the years. By my count, I have converted it five times; the most recent incarnation has it living inside Hyper-V.

That licence is important. While you can certainly create as many Linux VMs as you choose, Microsoft is a great deal more restrictive. OEM copies of Windows don't transfer from system to system. Retail boxed versions do. Windows client licenses don't allow you to run multiple copies of the operating system. Server 2008 R2 does.

If you have the money – or a TechNet account – nothing beats Windows Server 2008 R2. It comes with a top-notch virtualisation platform (Hyper-V), and added RemoteFX support with Service Pack 1. You can still use the desktop operating system for all your HTPC needs, and a single Server 2008 R2 Standard license allows you to run both a host copy and a single virtual instance of Server 2008 R2.

If you don't have the money – but have the time for something a bit more fiddly – check out CentOS and KVM. This combo is free, but lacks RemoteFX.

In my case, the host instance does little more than play movies on the projector via VLC. The virtual instance of Server runs my Plex media server, and aggregates my many storage devices into a single share using DFS.

The other two members of the house have Windows 7 VMs, and there are a handful of Linux VMs that sit in the background plonking away doing who-knows-what. (One of them backs up my files. I have no idea what the other four do.) In order to legally run these copies of Windows 7, I had to go out and get two new Windows 7 licences. Bear this in mind if you plan on building your own!

To get an idea of the kind of grunt you can expect from such a system, I currently have ~250 tabs open across 30ish instances of Firefox. About 80 of those tabs are instances of Webmin. There are a dozen Chrome tabs open in both Chrome and Opera.

From within my PVM I also have 30 RDP and 20 SSH sessions open to other computers I am working on. There are two copes of Word 2003, a copy of Excel, and 40 tabs in eight instances of Notepad++. I run Trillian for my IMs, a heavily customized version of mIRC, Feedreader, and Outlook 2003. Dropbox, Google Calendar Sync, TeamDrive, MSE and a backup agent all trundle along in the background. The VM still has 137360KB of free RAM.

Despite all of this, there is still room to expand. The PVMs get along fine with 3GB of RAM each. The Plex server gets 2GB and the Linux VMs together take up 1GB. You are supposed to allocate 2GB to the host operating system. This leaves about 2GB of RAM for future use. The whole system sips power. It averages about 45W total system power consumption; the CPU never really does much unless someone is transcoding video. This puts it somewhere between my netbook and my luggable for power consumption.

The Plex server is currently transcoding two videos for the other members of the house and I honestly haven't noticed any impact on my ability to type this article, answer my IMs or look things up in the browser.

So on the whole, the setup is affordable, fast and sips power. What about you, dear readers? Who among you are running virtualisation rigs at home, and how do they stack up? ®