The HashiCorp Nomad and Kubernetes logos, connected with an arrow pointing from Nomad to Kubernetes

Nomad to k8s, Part 13: Almost one year

Wherein I realize that I’ve been at this for almost a year now. This is part 14 of my k8s migration series. It has been quite a while since I last wrote a blog post about the migration. And I’ve realized today that it’s been almost a year since I made the decision to switch over to Kubernetes for my Homelab. On the 17th of August 2023, I posted about the HashiPocalypse. ...

August 15, 2024 · 4 min · Michael
A Grafana gauge panel. It is red, with the text 98.5% below it.

Prometheus Metrics Cleanup

I had to clean up my Prometheus data, and it got pretty darned close there. When it comes to my metrics, I’m very much a data hoarder. Metrics gathering was what got me into Homelabbing as a hobby, instead of just a means to an end. Telegraf/Influx/Grafana were the first new services on my Homeserver in about five years. And I really do like looking at my dashboards, including looking at past data. My retention period currently is five years. And I’m already pretty sure that when I come up to those five years for the initial data, I will just extend that to 10 years. 😅 ...

June 28, 2024 · 8 min · Michael

Homelab Backup Operator Part II: Basic Framework

In the last post of my Backup Operator series, I lamented the state of permissions in the kopf Kubernetes Operator framework. After some thinking, I decided to go ahead with kopf and just accept the permission/RBAC ugliness. I’ve just finished implementing the first cluster state change in the operator, so I thought this is a good place to write a post about my approach and setup. The journey up to now has been pretty interesting. I learned a bit about the Kubernetes API, and a lot about how cooperative multitasking with coroutines works in Python. ...

May 25, 2024 · 21 min · Michael

Homelab Backup Operator Part I: RBAC permission issues

As I’ve mentioned in my last k8s migration post, I’m working on writing a Homelab backup operator for my Kubernetes cluster. And I’ve run into some RBAC/permission issues I can’t quite figure out. So let’s see whether writing about it helps. 🙂 First, a short overview of the plan. I’m using the kopf framework to build a Kubernetes operator. This operator’s main goal is to handle HomelabServiceBackup resources. These will contain a list of PersitentVolumeClaims and S3 buckets which need to be backed up. I intend for there to be one HomelabServiceBackup object for every service, located in the service’s Namespace. ...

May 12, 2024 · 5 min · Michael
The HashiCorp Nomad and Kubernetes logos, connected with an arrow pointing from Nomad to Kubernetes

Nomad to k8s, Part 12: Backup Plan

Wherein it seems I need a new backup strategy. This is part 13 of my k8s migration series. During the last week, I’ve started to work on implementing my backup strategy for the new Kubernetes cluster. The original plan was to stay with what I’m already doing in my Nomad cluster. But it turns out I can’t, so I need a new strategy. If you’re prone to suffering from IT-related nightmares, you might wish to skip this one. The Nomad backup implementation ain’t pretty, and my current plans for the k8s backup implementation ain’t going to make it any prettier. You’ve been warned. ...

May 5, 2024 · 10 min · Michael