Putting AI-Hands on Routers: Building a GenieACS MCP Server in Go
Claude’s MCP lit a spark: in a weekend I taught GenieACS to talk to LLMs. Using Go, GoReleaser and GitOps, I exposed seven tools so an AI can list devices, reboot routers or flash firmware through a single /mcp endpoint.
Paging into the Night—Assess Before You Fix: Five Years of On-Call Lessons
Five years on-call taught me the pager’s first demand is context, not heroics. From half-built clusters to rogue upgrades, this post shares war stories, triage tactics, and manager tips for keeping incidents—and engineers—under control.
DevOps in the Catacombs – Everyday Software Archaeology and Why I’d Still Bet on a Monorepo
After almost decade in DevOps I spend as much time digging through forgotten repos as shipping code. Updating Sentry led me to GlitchTip, Redis Sentinel and hours of code-sleuthing—proof that documentation gaps turn DevOps into full-time software archaeologists.
Kubernetes Cost-Cutting That Actually Works: Rightsizing at Scale
Cluster idles at 8 % yet the bill soars? Learn how Prometheus data + KRR, a 50-line Python wrapper, Grafana and ArgoCD reclaimed 500 vCPU and 200 GiB across dozens of Kubernetes clusters—no magic, no incidents, just rightsizing done right.
When 'df' lies, 'du' swears it’s innocent and Loki eats your disk: a forensic walk-through
When df lies and du swears, look for Loki’s orphaned WAL segments. Our prod cluster filled up every week until we purged legacy boltdb-shipper data from S3. Postmortem, fix steps, and preventive checks summarized.