Skip to main content

The Evolution of my Home Lab

For my inaugural blog post, I figured it made some sort of sense to talk about something that I did early on in my career that had a lasting impact on me, professionally - the creation of my home lab and its evolution over the years. It's seen MANY small iterations over the years since I first had anything you could call a lab, but in the interest of time I'll just cover a few major ones and talk about how I use the lab today. Let me paint you a word picture...

The Early Days

Like a lot of IT professionals, I've always been predisposed to exploring how computers worked ever since we got our first hand-me-down 286 from my Grandma. Yes, my Grandma always had a better computer than I did, she was cool like that. In fact, I loved to tinker so much that I distinctly remember that I had tinkered with our "family" computer's operating system (MS-DOS 6.22, if I recall correctly) a little too much one day and it was no longer working properly. As a Christmas present, some of my relatives got together and paid a local computer repair shop to fix it for me. My uncle told me that the PC technician told him that - and this is a direct quote - "he had never seen a computer more messed up than yours". Clearly I was destined for greatness! As time went on, I always had a couple of old computers kicking around and would mess with them from time to time if I saw something that interested me, but I never really took my home lab seriously until after I graduated from the Network Specialist program at NWTC (Northeast Wisconsin Technical College)

The First "Real" Home Lab (A.K.A the Basement Auxiliary Heater) 

After I graduated from NWTC, I no longer had access to their lab equipment. It was mid-to-late 2010 at this point, and I had gotten a job at a local MSP as an intern doing PC support, although the roles were rather unstructured and I did server and application support too pretty much right from the beginning. Very quickly, I realized that if I wanted to learn more about how all this stuff worked (Virtualization? What's that?) I would need an environment that I could build up and break repeatedly. One other thing that became abundantly clear was that I would need to put in some time after hours if I wanted to learn new things. So I began the hunt for some lab equipment and headed to eBay.

I eventually found a pretty decent deal on a pair of used Dell PowerEdge 2950s, so I put in a bid on them and won. At this point, my home lab consisted of:

2x Dell PowerEdge 2950
Random whitebox running Openfiler for shared storage 
Linksys L2 managed switch scrounged from a client who had upgraded
Untangle firewall

I honestly don't even remember the specifications and sadly no pictures exist, but I think they only had 8GB of RAM each or something like that, so I couldn't run a lot of VMs on them concurrently. The storage was also just comprised of SATA drives, so I definitely wasn't running any demanding workloads either. It also had the added side effect of making my basement about 15 degrees warmer and making my wife angry about the increased electricity bill (in the present day, she just resignedly accepts my pile of gear in the basement).

By this time though, I was supporting some small ESXi 4.0 and 4.1 installations at client sites and this lab became a great way for me to understand ESXi installs/troubleshooting, virtual networking components/cabling, and get an introduction to vCenter and other management components. This ultimately led to being assigned a fair number of projects wherein we would move our clients from a physical server model to a virtualized one - including scoping the project, designing the solution, and implementing it once it was accepted by the client.

Time to Upgrade 

I ran the 2950s for a year, maybe a year and a half (RIP my energy bills) before I decided that I would need to upgrade if I wanted to continue to learn. By this point I had transitioned to the Professional Services Team at my employer at the time, and was working on larger and more varied projects. I decided on some whitebox servers this time instead of going with an existing rack mount server platform like the PowerEdge. I wound up with a pair of hosts running AMD-FX8120 8-core processors and 16GB of RAM each. ESXi 5.0 booted from a USB flash drive. I had switched to a Debian-based Linux distribution called OpenMediaVault for my storage (and some other plugins), but other than that, it pretty much stayed the same hardware-wise. I managed to find a picture of my daughter (who was two at the time) "helping" me build one of the hosts:

I kept this configuration until we moved in November of 2012. When we bought a house, I decided that I wanted to simplify my lab setup because I felt like managing it took up too much of my free time. I was also attending UW-Stout almost full-time with two young kids at home and a full-time job, so my ability to spend time on home lab pursuits was...somewhat diminished, to say the least. I moved from two physical ESXi hosts to zero, used the case/motherboard/CPU/etc from one of the hosts, crammed all the hard drives from my OpenMediaVault server into it, and just ran all the services I needed to either on that machine or on the firewall. It was truly a dark time for the LangHQ home lab.

Present Day

Today, I don't really have a VMware-focused home lab simply because I am fortunate enough to have gotten the approval to have a dedicated lab environment at work with 24/7 remote access. We use it primarily to test new ESXi releases and features, put together PoCs for new configurations with other teams in our IT Operations department, and also test new software/firmware for switches, firewalls, etc. At home, I have moved storage-focused distributions once again to FreeNAS - and I'm confident that I will actually stay with it for the forseeable future. I run a few Ubuntu VMs on FreeNAS as Docker hosts that handle the majority of the services. I have also moved to PFSense (I seem to have an affinity for FreeBSD-based distributions) for my firewall, which handles the inter-VLAN routing between my internal, secure, and guest wireless networks and is my perimeter firewall as well.

In closing, I will say that building, operating and maintaining a home lab has been a really great experience for me overall, especially when getting to know a new technology. I think that the money that you will spend on one, whatever your goal, is a solid investment in your future. If you want to get started building your own home lab, I can heartily recommend Reddit's /r/homelab subreddit for all things home lab related and of course VMware's own Hands on Labs for when you are light on cash but still want to learn about a VMware technology in a FREE lab environment.

Thanks for reading!

Popular posts from this blog

Step up your HTTP security header game with NetScaler Rewrite Policies

There are a number of HTTP response headers that exist to increase web site security. If set properly, they can ensure that your site is less exposed to many common web vulnerabilities. By no means are these descriptions exhaustive, so I have included some references that can provide a more in-depth explanation at the bottom of each section. I'd also like to give a shout-out to the OWASP Secure Headers Project  and Scott Helme of  - thank you! Note: Screenshots are from a NetScaler VPX 12.1 - if you are running a different version, the screenshots may look different, but the logic is the same. So that I have something to bind these policies to, I've also already created a load-balancing virtual server named lb_web_ssl and a Service Group for two TurnKey LAMP servers on the back-end. X-Frame-Options The X-Frame-Options header is designed to guard against clickjacking (an attack where malicious content is hidden beneath a clickable button or elem

How To: Unjoin NetApp Nodes from a Cluster

Let me paint you a word picture: You've upgraded to a shiny new AFF - it's all racked, stacked, cabled and ready to rock. You've moved your volumes onto the new storage and your workloads are performing beautifully (of course) and it's time to put your old NetApp gear out to pasture. We're going to learn how to unjoin nodes from an existing cluster. But wait! There are several prerequisites that must be met before the actual cluster unjoin can be done. Ensure that you have either moved volumes to your new aggregates or offlined and deleted any unused volumes. Offline and delete aggregates from old nodes. Re-home data LIFs or disable/delete if they are not in use. Disable and delete intercluster LIFs for the old nodes (and remove them from any Cluster Peering relationships) Remove the old node's ports from any Broadcast Domains or Failover Groups that they may be a member of. Move epsilon to one of the new nodes (let's assume nodes 3 and 4 are t

Modernizing a NetApp Certification

Read on to find out how new versions of NetApp exams are written during an Item Development Workshop at NetApp's RTP office In mid-October, this message popped up in the NetApp United Slack channel from Petya Stefanova, NetApp United's fearless leader: Hey @channel there’s a new opportunity to participate in an IDW with NetAppU. This time the workshop will be reviewing the two exams for NetApp Certified Data Administrator ONTAP (NCDA, NS0-192) and NetApp Certified Support Engineer ONTAP (NCSE ONTAP, NS0-590), taking place mid-end January. If you are interested, drop me an email how you quality and can contribute to IDW. I need to submit nominations by Friday. So please let me know ASAP! Partners and customers can participate I immediately knew that it was something that I would be interested in, so I talked to my employer to get their approval and put in my application. At the time, I didn't have any NetApp certifications so I didn't expect to be selected