Catch Up - What have I been up to? (Day 1)

󰃭 2025-01-10

I recently came across the #100DaysOfHomelab challenge and thought it’d be a perfect way to document stuff I’m doing. Day 1 is really a catch-up on recent changes, and there have been quite a few.

Kubernetes

Been rebuilding the k8s cluster multiple times (as one does in a homelab). The main improvements have been around networking. Since I’m using Cilium as my CNI of choice, I made two significant changes:

  1. Moved LoadBalancer IP management from MetalLB directly to Cilium.
  2. Dropped kube-proxy entirely, letting Cilium handle all service networking with eBPF.

I’ve also set up a bunch of applications using Argo CD’s app of apps pattern. I’ll share a list eventually.

Infrastructure Changes

Added a new dedicated Proxmox node specifically for services that need to be always available:

  • OPNsense for network management
  • DNS (made the switch from PiHole to AdGuard Home - the UI is quite nice, and setting up trusted SSL certificates is surprisingly easy)
  • A root reverse proxy setup using Traefik

What’s Next?

I’ve been trying to document more of these adventures - my drafts folder is growing faster than my published posts, which probably says something about my experimenting-to-documentation ratio. Hoping this 100 days challenge will help fix that balance a bit.

Stay tuned for more updates. With any luck, some of those draft posts might even see the light of day!



More posts like this

Traefik, Reverse Proxies and Lxc Containers (Day 4)

󰃭 2025-01-13 | #100daysofhomelab #buildlog #devops #homelab #proxmox

After running Proxmox for about 2 months, I realized I hadn’t tried out LXC containers yet. What better way to start than setting up a reverse proxy?

What’s a Reverse Proxy?

Think of a reverse proxy like a bartender - you ask for a drink, and they handle getting it from the right place. More technically, it’s a server that sits between clients and your web services, forwarding requests.

Continue reading 


Systemd and Proxmox (Day 3)

󰃭 2025-01-12 | #100daysofhomelab #homelab #proxmox

It turns out that Proxmox’s quorum requirements are not as “simple” as I thought.

The initial solution of setting quorum expectations to 1 worked… sort of. Here’s what happened:

When a node booted up (remember it can’t initially “see” the other node), OPNsense would start (great!), provide DHCP and network connectivity (also great!), but then things got interesting. Once the network was up and the Proxmox nodes could talk to each other, the other VMs would fail to start with cryptic errors like:

Continue reading 