Why I'm adding a blog to this site
I've had a personal website for a while. It lists the projects and the jobs, and that's about it. I thought it would be nice to also write up some of the things I deal with and what I've managed to get done.
I build solutions in cloud architecture to solve problems. That's also why there's a Kubernetes cluster running in my house. It's there so I can test new pieces of work and try new tooling, and mostly just because I enjoy the challenge of learning something new.
This is for other engineers, for anyone thinking about working with me, and for me in a year.
What I'll write about
- Things I've learned
- Problems I've run into and found a solution to
- Problems I've run into and not found a solution to
- Tools I've found that I think are cool
- Tools I've written that could be useful to someone else
A lot of what I build now is built with coding agents, so that will come up as well.
What I won't write
I'll never write pushy posts that say you must do this. There are best practices and recommendations, and there are plenty of those out there already. Inside best practice there's always a lot of room for movement in how things actually get done. "There's more than one way to skin a cat" is what comes to mind whenever I'm talking about infrastructure.
What you'll get here is what I did, why I did it that way, and what happened.
The first proper post will be about the homelab, since most of what follows hangs off it.

whoami
Ben Ralton — Cloud engineering, Full Stack Development & DevOps
more posts
My shared Postgres cluster went 133 days without a single metric being scraped
Prometheus never scraped the shared CNPG Postgres cluster in my homelab, from the day it was deployed until I went lo…
Claude.ai said no MCP server was found at my URL. It was a 404 on a method I hadn't implemented.
After OAuth succeeded, claude.ai reported no MCP server at my URL while Claude Code connected fine. The server only h…
The id in a Terraform state file is often not the one you import by
I wrote tf-import-blocks, a Node command that reads a Terraform state file and writes an import block for every AWS r…