HAND Series - Article 1 - Presentation

HAND - Article 1 - Presentation
Hello everyone, this is the beginning of a series of articles describing and showing how to setup and deploy an amazing homelab, meant to satisfy all your needs and make you enjoy the process of creation.
What is a homelab?
In case you have never heard the term, Homelab is the name given to a server (or multiple server setup) that resides locally in your home and where you host several applications and virtualized systems for testing and developing or for home and functional usage.
This server can be a simple tower or small PC or a Raspberry Pi like device or a repurposed professional server that you can acquire from companies who discard them due to their age but are still usable.
Why you need a homelab?
- Do you want to use any Operational System (OS) in your computer/server?
- Do you want to use all the available resources of your computer/server?
- Do you want to have production-like environment running in your home?
- Do you want to deploy cool open-source and powerful software?
- Do you want to practice and get hands-on skills from the comfort of your home?
If your answer to all or some of this questions is yes, then you have to try what I am about to share with you.
And no, I am not trying to sell you a course or an ebook
What to expect
This is going to be a series of articles breaking down the process into more chewable chunks so everybody can follow along or get the information needed for each step/topic.
The end result
- Hypervisor Host with Proxmox 7.3-3
- Windows 10 Virtual Machine (VM) with GPU Passthrough
- Unlimited ( As long as you have resources ) Linux VMs
- Kubernetes Cluster running in VMs
- Self-hosted Netflix-like solution
- All kind of apps for monitoring, journaling, source control, proxying, DNS, containers and more!
HAND - Homelab Automation Deployment
HAND is the name of the tool I developed in result of experimenting and creating the homelab. Is developed basically by using 3 pillars, Terraform for the infrastructure, Ansible for automation of provisioning and Bash scripting for the execution and logic. It is in the MVP or initial state, which means that can be extended, refactored and optimized.
I will call this series of articles with the same name as the tool, having in mind that by the end of the walkthrough of the process, we will review the tool and how it works. So If you donβt want to stress yourself and want the quick solution, technically you could run HAND (if you got the pre-requisites covered) and everything will be done automagically π
Disclaimer! The Windows VM with GPU Passthrough and the whole process of setting it up, is not actually HAND, HAND is the tool we will use later to automate setting up a Kubernetes cluster, provision it and install some programs onto it, the Windows VM is just done for comfort, and leverage the power of Hypervisor of Type 1, and lets us use the 100% power of our resources (
Without them being actually at 100%) instead of letting them sit at 1% usage
If you are interested and want to get your hands dirty, go ahead and jump to the next article!
Thank you for being here, be healthy, happy and productive! βπ»