System Build: Virtual Server Testbed

It was time to put together a box I could use as a virtual server testbed. The box would be used to run virtualization software so I could run various Windows and Linux virtual machines for testing purposes. This article covers the hardware and software I selected to run the testbed.

Picture of the M4A785TD-V Asus MotherboardI’ve been wanting to put together a box that I could use to set up test machines and servers. The easiest way for me to do this was to use some virtual server software so I could just create a new virtual machines when I needed a new configuration. The ability to roll back to an earlier state would also be a plus as would the ability to store machines until needed.

The Hardware

Awhile back I bought what I needed but never got around to the build. My requirements were simple:

  • Low Cost – speed is not an requirement
  • Run several VMs at once – this means enough memory to run several virtual machines at the same time
  • The CPU needed to support two virtualization specific technologies: Intel Virtualization Technology (Intel VT) for Intel CPUs or AMD Virtualization Technology (AMD-V) for AMD CPU’s along with Hardware Data Execution Protection (DEP).

So back in February (like I said, this is a long dormant project) I headed out to Newegg and looked for the cheapest CPU/motherboard combination that met my needs. I didn’t have a preference of Intel or AMD, but if all else was truly equal I would have gone with Intel.

I went with the ASUS M4A785TD-V EVO AM3 AMD 785G HDMI ATX AMD Motherboard which had a pre-combo price of $99 at the time ($89 today). It supported the CPU I picked  and supported up to 16GB or RAM. It also had 5 internal SATA connectors, 1 eSata connector and a bunch of USB connectors which would allow considerable expansion if needed. It also had onboard video so I could skip a video card. Since I’d only be accessing the box remotely it wouldn’t need much on the video side.

Picture of an AMD CPU boxFor the CPU I went with the AMD Athlon II X2 240 Regor 2.8GHz 2 x 1MB L2 Cache Socket AM3 65W Dual-Core Processor at $56.99. While it wasn’t the absolute cheapest CPU at the time it seemed the best value among it’s price peers. I went with the stock cpu cooler and fan.

In general, the only RAM that stayed within my price range were 2GB sticks so I went with the cheapest 2GB sticks from a reliable vendor which were two Patriot Gaming Series 4GB (2 x 2GB) 240-Pin DDR3 SDRAM DDR3 1333 (PC3 10666) Desktop Memory Model PGS34G1333ELK at $96.99 each at the time but were up to $109.99 when I checked today.

I like Antec power supplies and wanted to stick with what works, so while not the cheapest I went with the Antec Basiq BP430 430W Continuous Power ATX12V Version 2.2 Active PFC Power Supply at $44.99 at the time but down to $39.95 today.

The final item was the case. I expected the case to remain untouched once the PC was built and it would also be sitting off in a corner under my workbench. So I didn’t need much. I went with Newegg’s house brand Rosewill R230-P-BK Black SECC Steel ATX Mid Tower Computer Case which was on sale for $23.99 at the time.

While these may not have been the absolute cheapest components, between free shipping for everything (including the large case and heavy power supply) and a combo deal the entire thing was pretty reasonable and within my $400 budget.

For hard drives I’d be using what I already had around. I ended up using a Western Digital Caviar Black WD1001FALS 1TB 7200 RPM 32MB Cache SATA 3.0Gb/s 3.5″ Internal Hard Drive that had been in my PC but was now on the shelf. For data drives (to hold the VMs) I went with three HITACHI Deskstar HD32000 IDK/7K (0S00164) 2TB 7200 RPM 32MB Cache SATA 3.0Gb/s 3.5″ Internal Hard Drives which I had picked up on sale but had yet to use.

It all went together rather easily. The Rosewill case was serviceable, especially considering it’s price. But it lacks a polished finish and I had to be careful to avoid cutting myself on the edges. The pop-open USB/audio port tray on the front panel is hard to open and close. If it needed to be open and closed very often it would be annoying at best and probably break eventually.

I did struggle a bit getting the AMD fan/cooler secured on the CPU but this was my first AMD experience.

The Software

I first took a look a Microsoft’s Hyper-V Server 2008 R2. Besides being free, this seemed like a low overhead solution. The install went fine but the configuration is where it became problematic. All but the basic setup is remote and I was having trouble getting a remote connection. While it seemed I was doing everything right it didn’t work until I turned off the firewall completely. At this point I decided that Hyper-V was at a complexity level I just didn’t want to deal with and decided to go with something else.

Among other options I looked at were VMware Player and VMware Server from, you guessed it, VMware. Both are free and both must be installed on a host operating system. For VMware server the only choice is Windows Server 2008. This was again more complexity than I wanted so it was immediately dropped from my list. VMware Player could be hosted on Windows or Linux but was limited in it’s ability to edit existing virtual machines. I eliminated it since it seemed a bit like a crippled product product that led into the paid offerings.

I didn’t really consider Microsoft Virtual PC. While I am interested in learning about it I didn’t want to worry about a Microsoft lock-in and Microsoft targeting mainly their desktop OS’s for support as guests. I also didn’t consider any commercial products as I’m convinced a free or open source product could meet my simple needs.

Birtual Box LogoI ended opening going with my fall-back choice from the beginning – VirtualBox from Oracle (originally from Sun which was acquired by Oracle). I’ve been running VirtualBox on my Windows Desktop to create a virtual machine I can use to VPN into my employers network and it’s been solid. I haven’t tried a lot of different guest OS’s yet. VirtualBox is available under a GPL license. This GPL version lacks “a few features that primarily target enterprise customers”. The full version a also available free for personal and evaluation use. I ended up using the full (but free) version and not the GPL version. Virtual Box can be installed on Windows, Linux or OS-X.

So I ended up installing Windows 7 Professional as the host OS since it seemed the simplest choice. I have a TechNet Subscription which allows multiple OS installations for testing purposes and this certainly falls within those boundaries, otherwise I would have gone with Linux. I went with the Professional flavor so I could fall back to Windows Virtualization with little effort. It also allows me to use Remote Desktop to access the box since it won’t typically have a keyboard and monitor connected.

I installed Windows 7 to the Western Digital system drive. As for the 3 Hitachi Drives I configured them for stripping across all three drives in order to improve performance. This is where my Virtual Machines will reside. This is RAID 0, which is properly nicknamed “scary RAID”. Data protection is usually inferred when the term “RAID” is seen, but with RAID 0 the data is split evenly across all physical drives in order to improve performance and there is no data protection. In fact, in increases the chance of data loss, in my case I have three times the chance to lose data. When I lose any one of these 3 drives I will lose all my data. Notice I said ‘”when”, not “if”. I’ll need good backups because it’s only a matter of time.

The motherboard does support RAID but I chose to go through software for now to stay flexible and reduce complexity.

For backups I’ll keep copies of my virtual machines on another server. Since this is a test box I’m not overly concerned with having to roll back to a backup created a couple days ago. In the event I’m into some heavy testing I’ll have to be sure to keep up to date backups.

Summary

So I ended up with the following as my Virtual Server Testbed:

  • Asus Motherboard with 5 SATA ports and numerous other expansion options
  • AMD Athlon II X2 2.8Ghz dual-core processor
  • 8GB DDR3 RAM
  • 1GB System Drive
  • 3 i 2TB drives configured as a stripped set giving me a 6GB logical drive
  • Windows 2007 Professional
  • Oracle VirtualBox

I ran some benchmarks with Passmark Software’s Performance Test and it returned a overall rating of 944.2 when benchmarking the Western Digital drive and an overall rating of 1049.0 when benchmarking the stripped set as the hard drive. This compares to an overall rating of 1205.3 for by Quad-core Windows PC. Considering the low cost I was surprised it benchmarked so well. It also feels snappy enough while using it.

The box had a Windows Performance Rating of 4.6 which broke down as follows:

  • Processor: 6.3
  • Memory: 7.2
  • Graphics 4.6
  • Gaming Graphics: 5.5
  • Primary HDD: 5.9 (this would be the Western Digital)

So, the box has been moved under the workbench, hooked to power and the network, and it’s waiting to have some guest OS’s installed on it.