A VMware ESXi Test Box

Test Box

As part of my life as a professional software developer, I spend far too much time building up and tearing down systems. I had used a couple of HP G7 Microserver but while good (and cheap!), they lacked the power some applications required.  I decided to finally bite the bullet and build a VM box to complement my workstation. [VMware ESXi 5.1]. Basic requirements for this box were:

  1. Performance – Need to be able to execute a number of VM’s concurrently with reasonable throughput
  2. Storage I – Reasonable amount of general disk to support multiple VM’s
  3. Storage II – Fast disk to support databases.  Using Oracle 11g & 12c and these products eat machines
  4. Support for IOMMU.  Not needed immediately but useful to have
  5. Room for expansion
  6. Not too expensive – Bit of a ‘how long is a piece of string’ this
  7. Reliable. This kit earns its living.  Not a toy.

Motherboard / CPU

One interesting feature of ESXi that I found out about early on was that if a VM needs N cores and N-1 are available, that VM will not run at all until N are available.  This struck me as a bit odd as it could lead to situations where considerable resources were available but a VM would not execute.  I had always presumed that a system of ‘virtual’ CPU’s would exist as per Oracle VM VirtualBox.

The cheapest solution here is to obtain a CPU with as many cores as possible.  Due to price constraints, a Xeon based system was ruled out.  The best solution I could see was an AMD FX-8 series device.  In my case,  I picked up an AMD FX8350, for what I considered a reasonable price for a lot of processor.

Now a motherboard.  Choice came down to an Asus (Always proved reliable for meAsus M5A99X Evo R2.0 (Tested IOMMU configuration), with good expansion capabilities,

2 x PCIe 2.0 x16 (x16 or dual x8)
1 x PCIe 2.0 x16 (x4 mode, black)
2 x PCIe 2.0 x1
1 x PCI

Memory

The maximum supported by the hypervisor is 32GB so that seemed a sensible amount to aim for.  I’ve never experienced an issue with Crucial since I started using them so a quick check with the Crucial Memory Advisor and a search on Amazon came up with:

Crucial 32GB 4x 8GB DDR3 1600 MT/s CL9 @1.5V Ballistix Sport UDIMM 240 Pin Memory Module Kit

I wasn’t too concerned about performance but needed something reliable.  The kit was the cheapest supported Crucial kit I could find on Amazon.  Prices are fluctuating rapidly so be careful.  I’ve noticed that I can always get Crucial memory cheaper from 3rd party sites as opposed to buying it direct.  Odd but true.