For a good chunk of my professional career, a low power lab environment has been quietly chugging away in the corner of my home office. Frequent visitors to the site may have noticed my lack of lab related posts for many years. In short, I sold off the entire collection of home lab gear back in 2017 as I prepared to pack up my life and head to Oakland.
My home lab had been sitting idle for quite a while. Not for any lack of care of ability to perform tasks – the lab certainly had enough horsepower to do just about anything I wanted – but more from lack of interest. I spend so much of my time in a variety of work environments and public cloud environments that the need to tinker with home equipment simply evaporated.
Do I recommend starting or adding to a home lab? Yes! Having a home lab catapulted my career and allowed me to acquire dozens of certifications with VMware, NetApp, Microsoft, Cisco, HP, EMC, Red Hat, and many others. I am extremely glad that I went that route to ultimately work my way towards achieving the VMware Certified Design Expert (VCDX) certification back in 2012.
However, requirements change. Designs change. Interests and goals change. And, as such, I’ve been out of the home lab and hardware game for quite some time.
Quick Reminder: I livestream on technical topics every week on Twitch – come join the adventure! Drop a follow and enable notifications to stay current.
Where, then, did the data and services migrate? All of my applications and data live in cloud and SaaS offerings. With some savvy design, this current setup costs me about 1/12th the money I was spending to simply power my on-premises home lab. I’ve written about many of these adventures over the past few years, such as when describing how to Building a Bot with AWS Lex, Lambda, and Rubrik.
Here are some of the resources I utilize on a regular basis:
- Microsoft 365 for Office applications, OneDrive, and other productivity applications on an annual family subscription. This covers the endpoints used by my wife and me.
- Microsoft Azure free monthly products, such as Azure DevOps, Azure DevTest Labs, ALB, and other IaaS components.
- AWS free tier resources and a few paid resources, such as Lambda / Step Functions, DynamoDB, a few EC2 instances, API Gateway, RDS, ALB, S3, and other IaaS components.
- Google Cloud free tier, mostly for tinkering with AutoML Natural Language, Cloud Run, Cloud Shell, and Cloud Storage.
- GitHub Free with private repositories to host the code for my Infrastructure as Code storage while using GitHub Actions for pushing around bits.
- HashiCorp Terraform (open source), AWS CloudFormation, and Azure Resource Manager (ARM) templates to define infrastructure and maintain desired state. I very, very rarely create anything by hand.
- HashiCorp Vault (open source) for cloud-independent secrets management and CI/CD authentication. This runs in AWS.
What about the code? All of the functional bits are written in Golang, Python, PowerShell, or the domain specific language (DSL) of the tool provider, such as HashiCorp Configuration Language (HCL). Pretty much everything else is just a fancy JSON file placed in the right spot. 🙂
Fare Thee Well
My lab started with a single Dell T110 tower and a heavily modified Untangle server to handle virtualization and internet gateway needs. I’m proud that my entire organization and domain structure lived through many years of updates, crashes, several cat-related cable attacks, and my chaos monkey ways. I hope the folks who acquired all of the gear get many more years of enjoyment out of it!
Please accept a crisp high five for reaching this point in the post!