Somewhere in a cluster I look after, an autoscaler had provisioned a full compute node to run two small controller pods. Nothing else would ever schedule onto it. Noth...
Pods on our arm64 nodes were dying instantly with:
Every slow-application investigation has a moment where someone opens the database dashboard, sees a spike, and the room exhales. There’s the culprit. Read IOPS triple...
Most of my mistakes in GitOps-managed infrastructure aren’t logic errors. They’re mechanical: a values path that doesn’t exist in the chart, a template that renders di...
The pod was Running. The liveness probe was green. There were 521 items in the queue and every worker was idle. It had been that way for hours.
The street outside my house has a 15mph limit. It also has, as far as I could tell from standing at the window, a steady supply of people treating that as advisory.
I spent a summer building a speed camera to measure the street outside my house. That’s the previous post. This one is about the afternoon I sat down to report what it...
There’s a piece of Kubernetes advice I believe in and repeat constantly: don’t guess resource limits. Ship the behavioural change, watch the real baseline in metrics f...
I built a speed camera for the street outside my house, mostly out of curiosity about how bad the speeding actually was. It uses a Raspberry Pi, a wide-angle camera, a...
I run a handful of self-hosted apps at home on top of a small Kubernetes cluster, managed the boring, correct way: a dependency bot watches container image tags across...
I set up a small scheduled job in my home lab to keep an eye on outdated container images and post a summary somewhere I’d actually see it. The scanning tool runs, pro...
A small site I run had a contact form that quietly stopped working. Not “returns an error” — worse. It just 404’d, silently, with nothing in the platform’s own dashboa...
I run a small home lab behind a dynamic residential IP, so a handful of subdomains — the ones I use for remote access to stuff at home — depend on a dynamic DNS update...