A screenshot of a Grafana visualization titled 'Objects in cluster'. It shows a pretty consistent growth until about October 10th, where the first drop of about 150k objects occurs. Then a far steeper drop follows on October 19th to 21st, straight down from 1.9 million to 1 million. Afterwards, there is regular growth again, but now interspersed with similarly regular drops in the object counts.

Cleaning up my Mastodon Media Cache

I recently randomly wandered onto the Mastodon admin page. What I saw there will shock you. (I’m so sorry about that introduction) That’s perhaps a bit much in the Media storage area for a single user instance. I was pretty sure that I had previously configured Mastodon’s media cache retention to 7 days. Checking up on that, I found that I had remembered correctly. So I dug a bit deeper, and it turns out that the Vacuum failed....

November 27, 2024 · 14 min · Michael

NFS problems with new Ubuntu 22.04 kernel

Yesterday’s Homelab host update did not at all go as intended. I hit a kernel bug in the NFS code. To describe the problem, I need to go into a bit of detail on my setup, so please bear with me. I’ve got a fleet of 8 Raspberry Pi CM4 and a single Udoo x86 II forming the backbone of the compute in my Homelab. All of them do netbooting, with no per-host storage at all....

February 17, 2024 · 6 min · Michael
The HashiCorp Nomad and Kubernetes logos, connected with an arrow pointing from Nomad to Kubernetes

Nomad to k8s, Part 5: Non-service S3 Buckets

Wherein I document how I migrated some S3 buckets over to the Ceph Rook cluster and with that, made it load-bearing. This is part six of my k8s migration series. So why write a post about migrating S3 buckets, and why do it at this point of the Nomad -> k8s migration? In short, it just fit in here very well. I already planned to make Ceph Rook one of the first services to set up anyway....

January 25, 2024 · 21 min · Michael

PG Autoscaling in Ceph Rook

While working on some internal documentation of my Rook Ceph setup, I found that my pool’s Placement Groups were still at size 1, even though I had transferred about 350GB of data already. I have the PG Autoscaler enabled by default on all pools, so I won’t have to have an eye on the PG counts. But for some reason, scaling wasn’t happening. Digging into the issue, I finally found the following log lines in the MGR logs:...

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

Nomad to k8s, Part 4: Storage with Ceph Rook

Wherein I talk about the setup of Ceph Rook on my k8s cluster. This is part five of my k8s migration series. The current setup I’ve been running Ceph as my storage layer for quite a while now. In my current Nomad setup, it provides volumes for my jobs as well as S3 for those apps which support it. In addition, most of my Raspberry Pis are diskless, netbooting off of Ceph’s RBD block devices as their root....

January 11, 2024 · 26 min · Michael