Home Lab: A Place to Learn, Explore, and Grow
A continuation of my blog post about a career change prompted by the sheer desire to learn and grow.
Experience is the teacher of all things -Julius Caesar
I’m not the first to have a working home lab. As a matter of fact, I delayed it so long that I’m probably the last. I’ve always wanted a home lab but let’s face it, outside of work, I fully embrace my laziness. When the work day is deemed complete, the last webpage I want to open is the VMware vSphere Web Client….
I’d probably use the C# client anyway –> I take that back, I’m using the Web Client more and more these days.
Like a squirrel collecting acorns for winter, I had been steadily collecting equipment for a home lab over the last year and stashing it all downstairs for future use. Most of the equipment came from previous employers who would have otherwise disposed of it and included rack-mounted servers, storage, and various random items. Regardless of the fact that I now had ‘enterprise-level’ gear at my house, it collected dust. Why bother with a home lab when I had already built a quality lab at work?
Wouldn’t it be brand-worthy to have my own AD infrastructure, server name standards, and IP address scheme? Even simple things, like how it would be marvelous to take screenshots for blog posts where I didn’t need to blur out confidential information from using the lab at work. Plus, deploying my own AD infrastructure would allow me to work in a lab environment completely risk free. Ok, let’s do this…let’s get started.
Location, location, location.
First and foremost, I had to decide where this lab will live. To prevent annoyance and complaints, I needed somewhere secluded from living space but easily accessible to work on. Although it’s tight quarters, I decided to build it in the closet under the basement stairs. The basement is naturally cooler and the lab is inaudible with the door closed. Perfect.
Although the majority of my equipment was rack-mountable, I had no 4-post rack to use (although I’d love to have one) so I gathered a few older milk-crates to keep them off the floor. Since the servers are rack-mounted servers, they are fairly long and flat, making a great resting place for my storage and network switch. My biggest concern here (which is really just absurd) would be that cable management would be non-existent. Understanding that this is a home lab, it sort of drives me crazy because I’m very peculiar about cabling. Regardless, I decided to partially satisfy my cabling needs by using yellow for the storage network and blue for data.
So what’s in this lab anyway?
Before I get into configuration, here is a quick list of the equipment and software that makes up the lab:
- Compute: (2) Dell R710 servers w/ 72GB RAM
- Storage: (1) Synology DS1515+ for workloads | (1) Synology DS414j for backups
- Network: Cisco SG-300 L3 switch
- UPS – TrippLite SMART1500LCDT
- Software: VMware vSphere Ent+, PernixData FVP, Thycotic Secret Server, Veeam B&R
The Dell R710 servers were provisioned with VMware ESXi 6 Update 1 using an internal USB for the boot device (I do have 3.5″ 15k drives in the front of both servers but decided not to use them for now to keep power utilization to a minimum). Since I’m booting to USB, I’m redirecting log files to a datastore. Servers are named ESXi1 and ESXi2 for simplicity.
The Synology DS1515+ was provisioned with a single Samsung EVO 850 for read-cache and (4) SAS drives for workloads and storage. Storage was provisioned by creating a few basic iSCSI LUNs and iSCSI targets and ensuring advanced settings for each iSCSI target were set to allow multiple sessions from one or more iSCSI initiators to enable shared storage. From a Synology networking perspective, I created an adaptive load balancing bonded interface across all 4 – 1Gb NICs. These 4 NICs were placed on basic access ports on vlan 5.
For the Synology DS414j, it will be provisioned with 1-2 larger iSCSI LUNs or utilize NFS/CIFS for Veeam backups. Haven’t decided yet but I need to do this very soon.
I wanted to mimic an enterprise deployment as much as possible in the lab so obtaining a L3 switch was the ultimate goal. I decided on the Cisco SG-300 as a core switch to ensure I can segregate traffic using VLANs. Although the switch itself has been superb, its configuration has proven to be tricky at times considering this was a small business switch and not a full-featured switch like I was used to. Regardless of its nuances, it switches packets and handles L3 so it serves its purpose well.
For segregation purposes, I created several VLANs for specific traffic, including VLANs for Management, vMotion, iSCSI, storage traffic, and finally a vlan for internet connectivity to my home router. IP routing for the lab was very simple since all L3 interfaces would live on the SG-300 itself. However, for internet connectivity and to provide access from wireless, I did require a simple default route pointing to my router. An IP route on my wireless router points traffic destined to 10.10.0.0/16 over to the home lab.
In regards to software, I’m not doing anything out of the ordinary yet. Most of the software listed here is merely for management, maintenance, and performance in the lab and I’ll quickly have other applications provisioned down the road. A few applications I plan on deploying to learn include vRealize Automation, Hyper-V, Windows Server 2016, and more.
VMware vSphere Enterprise Plus is utilized as the virtualization stack using licenses from the vExpert program. As time permits and curiosity peaks, I want to deploy Hyper-V for learning purposes as well. PernixData FVP is deployed to improve performance for VMs using additional RAM as a read caching mechanism. I provisioned Thycotic Secret Server to help manage my service accounts and other information within the lab. In addition, Secret Server rotates the passwords for my ESXi and Windows hosts on a monthly basis to ensure some level of security. And finally, Veeam B&R is providing backup and recovery for the lab environment because, well, it is a lab and its purpose is to test and potentially break things 🙂
Last but not least, here’s a quick layout of the lab and its configuration Again, nothing too complicated here but I’m just getting started.