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

Nomad to k8s, Part 14: Deploying the Backups

Wherein I’m finally done with the backups in my Homelab’s k8s cluster. This is part 15 of my k8s migration series. Finally, I’m done. After months of writing Python code for my backup operator. Especially during the middle phase of the implementation, after the initial planning and design, it felt like a slog. Dozens of tasks, many functions to implement, and seemingly no end in sight. I’m rather elated to finally be able to write another post in the k8s migration series. ...

January 23, 2025 · 11 min · Michael
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
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
The HashiCorp Nomad and Kubernetes logos, connected with an arrow pointing from Nomad to Kubernetes

Nomad to k8s, Part 11: Container Registry with Harbor

Wherein I migrate my internal container registry to Harbor. This is part 12 of my k8s migration series. Let’s start by answering the obvious question: Why even have an internal container registry? For me, there are two reasons: Some place to put my own container images A cache for external images Most of my internal images are slightly changed external images. A prime example is my Fluentd image. I’ve extended the official image with a couple of additional plugins. And I needed some place to store them. ...

April 27, 2024 · 22 min · Michael
The HashiCorp Nomad and Kubernetes logos, connected with an arrow pointing from Nomad to Kubernetes

Nomad to k8s, Part 10: Grafana

Wherein I migrate my Grafana instance over to k8s. This is part 11 of my k8s migration series. I already wrote about my love for metrics in the companion post about the Prometheus setup, so I will spare you my excitement about pretty graphs this time. 😉 For the Grafana setup, I used the kube-prometheus-stack’s integration of the Grafana Helm Chart. Database setup First step is to setup the database for Grafana. You can also run it locally, without an external database. Then, Grafana uses an SQLite DB. But the Postgres database made more sense to me. This was the first deployment of a production database with CloudNativePG and looked like this: ...

April 6, 2024 · 11 min · Michael