The Anatomy of the Ultimate Home Lab

I love to solve any kind of IT problem. Large or small, Complex or a Tsunami, it’s been in my DNA since I was a kid. Approaching 40 year of computing technology I have seen much. I’ve been an Architect for close to 30 of these years well before we had the cool title of Architect. I spent most of my career in the Logistics and Transportation and although it might sound boring to some, it has been an exciting and quite personlly fullfilling adventure the whole time. Not to say we don’t have bumps along the way since there were plenty.

In my career as an architect I find that during the day we learn about many business challenges and complex problems that need solving. Not much time to do research and even have fun doing proofs of concept trial and error, and making lots of mistakes getting it right. This is all in a day’s work. That being said much of my research like most architects is in my downtime on nights and weekends. Don’t get me wrong, I like doing it.

Here is where the home lab gets important. I have outlined what I believe makes up a great set of requirements for the anatomy of a home lab. If you are trying to build a lab to test networks, then this one is NOT for you. Although you can test with this, it’s not the intended purpose.

Requirements

This is my user story. “As an IT architect, I need to be able to do rapid research on a target in a pristine environment each time so I don’t build unintended dependancies.” Simple enough right? In the end, not really. There is much to consider

  1. We need to be able to spin up lots of servers at random
  2. We need to easily dispose of the work or “park” the work when not using it.
  3. We need a dependable and reliable network that is EASY to manage so it does not get in the way each time
  4. Internet Access - of Course!
  5. Since we have internet, we MUST have a super safe way to access it both at home and on the road.
  6. We want virtual machines, containers, Kubernetes or whatever else we can throw at it! No limitations other than compute resources. Nothing is perfect.
  7. We need some kind of UX/UI to visualize all of this. Don’t get me wrong. I am a 100% commandline person and still use VI, but a good UI can be helpful in the end.
  8. We need to consider power requirements so we don’t bleed our bank accounts when our lab is running!
  9. Optional: We need to utilize both AMD64 and ARM64 platforms as required
  10. Finally we need an imagination to perform all of these wonderful research tasks we will perform or what’s the point?

What’s next?

OK now that we have our requirements, I will not only show and describe how to design, purchase, and build the ultimate home lab! This will be a journey of many small to medium articles so sit back, grab your favorite beverage and let’s get started!