Blog
Original summaries of my most-read technical articles — Kubernetes observability, Terraform, and AWS. Each one links to the full, in-depth version on Medium.
How We Broke Up Our Terraform Monolith with Terragrunt — and What It Actually Got Us
Why we moved our entire Terraform infrastructure across development, test, and production onto Terragrunt, how we migrated without downtime or state loss, and the honest tradeoffs.
2026-10-05
Kubernetes Observability with Grafana, Loki, Tempo, Mimir & Alloy
How to wire Grafana, Loki, Tempo, Mimir, and Alloy into a single cross-correlated observability stack on Kubernetes, deployed via Helm.
2025-10-13
The Ultimate Grafana Alloy Setup Guide
Replacing Fluent Bit, Node Exporter, and an OTel Collector with a single Grafana Alloy agent on Kubernetes — config, routing, and the measured resource savings.
2025-10-09
A Production-Ready Guide to Grafana Tempo on Kubernetes
A production Grafana Tempo setup on Kubernetes: S3-backed storage via IRSA, independent scaling per component, and metrics-generator for automatic RED metrics.
2025-10-01
A Production-Ready Guide to Grafana Mimir on Kubernetes
Moving past single-node Prometheus limits with Grafana Mimir's microservices architecture — component split, S3 buckets via IRSA, and the multi-tenant gotcha that trips people up.
2025-09-30
How Terraform's New Helm Flags Prevent Kubernetes Management Chaos
What Terraform's take_ownership and upgrade_install Helm provider flags actually do, and how to tell a real deploy risk from a harmless state-schema refresh in the plan output.
2025-11-07
Zero Downtime Deployments with Kubernetes Using ALB and NGINX
Why AWS ALB alone drops traffic during Kubernetes rolling updates, and how inserting an NGINX Ingress layer plus the right grace-period tuning gets to 100% availability.
2025-02-27
Reducing Uptime Kuma's Database from 5GB to 2.7MB — a 1,850x Cleanup
Diagnosing and fixing an unbounded SQLite growth problem in Uptime Kuma: from a 5GB database and a 10-30s dashboard load to 2.7MB and 1-2 seconds.
2026-01-16
Looking for the rest? View all articles on Medium →