Building a Home Lab on a Budget
A good home lab is a great resource for any IT Professional. Its a test bed that can be used to emulate a production environment without the risk of data loss or systems outages should you inadvertently break something during testing.
Its also a great environment to test new operating systems, software and network setups in your own time.
Home labs are also ideal if you are studying any kind of IT Certification as they allow you to reconfigure the virtual machines quickly and even change the network setup as the situation demands.
I’ve been looking to put together such an environment for the last few years but a lack of space at home has meant that it was impractical. Recently we have had a colossal clear out of our loft at home and this has cleared a space that would be excellent for a home lab.
While our loft isn’t very well insulated it does have great ventilation, is totally dry and does have more than enough space to hold a compact little lab, a work bench that I can work at and room for a couple of monitors. Ironically this great space was up there all along, just full of junk.
The building blocks of a budget home lab
Any good home lab consists of all of the following: Software, Hardware, Storage and an Enclosure.
For my VM hosts i’m probably going to either use the free Microsoft Hyper-V Server 2012 R2 or VMWare’s HyperVisor V6. Initially i’ll be using the Microsoft version as this ties in nicely with my planned MCSA, but in the long term i’d like to have a good play with both. I may even try my hand at OpenStack.
Hardware & Networking
The core of any virtualised home lab environment is the servers that host the virtual machines. For my planned home lab i’ll probably look to pickup an entry level server or two – possibly something like a Dell T20 or Lenovo TS140. While i’d like a Xeon powered server (even a low power one) being realistic its probably out of my initial budget so i’ll see if I can pickup an Intel i3 powered server or even the lower specced Pentium will suffice.
While you can run a good number of virtual machines on slow CPUs the real killer is going to be the amount of RAM available on the server. For my MSCA Server 2012 ideally i’ll need to run 4 to 6 virtual machines concurrently, and I don’t want to skimp of the RAM assigned to each machine, an absolute minimum of 1Gb depending on roll so i’m going to need at least 8Gb, with 16 or more preferable.
For disk space i’m not overly bothered. I’ll probably try and pick up a cheap SSD to use as a boot drive or maybe boot from USB or SD card depending on what the server supports.
I did briefly consider picking up a couple of older severs such as Dell 2950‘s the noise, size and running costs are going to be prohibitive. If the lab was in a garage or basement then I may have picked up a couple from eBay but I don’t think my loft boards would cope.
From a networking perspective its an easy choice. I was given a couple of 24 port D-Link gigabit switches recently so i’ll use those. I’ll probably have one dedicated to network traffic and one to the shared storage. Speaking of storage..
I want to use shared storage on the virtual hosts where ever possible so I can practice some failover and high availability scenarios so i’m going to need either a NAS device such as a Synology DiskStation DS415+ or a dedicated file server to host the virtual hard drives for the lab.
I also have a growing media collection so I need somewhere that has capacity for this as well.
I have a number of 1TB and 2TB hard drives laying around from an old project that I will just reuse rather than buying new – mainly to keep the costs down.
Housing the Home Lab
While i’d love a proper server cabinet to house everything in the costs to pick one up is going to be prohibitive. I’d rather spend the budget I have available on lab kit and go for something like a LackRack to hold everything together.
I’ve given my self an initial budget of £500 all in to build the lab. This must meet all of the following criteria.
- At least 1 vm host server with a minimum of 16Gb RAM (2 would be preferred)
- Some form of shared storage, either a NAS or server that has at least 2TB of disk capacity
- Ample networking both in the lab itself and a wired connection to my broadband router downstairs
- Some form of cabinet keeping everything neat and tidy
I think that the above are achievable given the budget i’ve allocated myself.