My Homelab Story

My Homelab Story
Photo by Alexandra Lee / Unsplash

Introduction

Years ago, this story started by installing a virtualization platform on a computer idle at home. My first goal was to solve the virtualization logic and examine how it works. Later on, it grew and became a complete home laboratory environment.

Early Days

One day, while reading an article about K3S, the RP's waiting at home came to mind. I performed the first installation as a Sunday project.

You can find related article from here

I now had a working Kubernetes cluster. I immediately started creating and deploying small functions. Naturally, after a while, I faced the fact that the resources were insufficient and realized that a new computer was needed.

Development Days

I decided to expand the lab environment at home and buy a new mini PC. I ordered an MSI Mini PC. First of all, I upgraded the memory to 64GB, increase storage to 2TB (1TB nvme and 1TB SSD) and start digging virtualization platforms.

First, I had to choose a suitable virtualization platform for myself. I made my first attempts with VMWare ESXI. ESXI was fine until I decided to set up my own Kubernetes on it. I tried so many tools to achieve it but in the end, 1 bare metal server was not enough.

Then, I bought 2 more MSI mini PCs for clustering.  I needed to set up VSphere to use ESXI with high availability. Boom I decided that the license fee was too high and decided to change my platform.

Then I started using Ovirt. Ovirt days also were fine until I decided to set up OKD. In my previous company, we were using Redhat Openshift for workload management. I decided to set up my own environment and simulate changes in my home lab.

Guess what? My 3-node cluster was not enough for the OKD installation. I tried official tools and some guides but nothing changed. I'm so obsessed with setup it and OKD system requirements required a lot of CPU / Core.

In the end, I sold my mini PC cluster.

Nowadays

Current Server

I bought a proper server. HP Proliant ml350p gen8 with the following components

Also, I have the following peripherals.

  • WD My Cloud ex4 4TB NAS (NFS and iSCSI)
  • Xiaomi AIoT Router AX3600 WiFi 2976 Mbps
  • TP-LINK TL-SG1008D 8-Port 1000Mbps Gigabit Switch

Currently, I'm using Proxmox as a virtualization platform (I definitely recommend it). Also, I'm running 2 types of Kubernetes distribution now. One of them is plain Kubernetes installed with Kubespray and the other one is EKS Anywhere.

Small screenshot from my Proxmox homepage

Also, the following applications are running in my cluster or standalone virtual machines.

  • Gitlab
  • ELK
  • Pi-Hole
  • Home Assistant
  • N8N
  • Grafana
  • Prometheus
  • Istio
  • Argo
  • Postgresql Cluster
  • Minio
  • KubeVIP
  • Pixie
  • Traefik
  • and other tools.

Also, I'm using Cloudflare Tunnel for publishing my internet-facing applications.

What happened to my old Raspberry PI Cluster?

My old cluster is still alive! but its shape has changed a bit. (It looks better, doesn't it?) Now running with 4 nodes. It is also running with Raspberry Pi OS with K3S. I'm using it for small functions.

Current RP Cluster

Conclusion

If you are someone like me who wants to constantly try new technologies and gain experience, I strongly recommend you set up a home laboratory. In this way, you can get rid of excess cloud bills, break your system as you wish and reinstall it.

Also, I would like to thank a few youtube channels that gave me very good information and instructions.

See you in the next article.  👻