Dora Noda
Software Engineer
Dora Noda is a Software Engineer writing about Web3 infrastructure, blockchain networks, and self-hosting.
3404 posts · View all authors

Healthchecks.io Left the Cloud Bucket: What a Real SaaS Paid to Bring Object Storage Home
Healthchecks.io moved production object storage off managed cloud in April 2026. A case-study read of the egress and replication trade and a decision framework for when owning the disks beats renting the bucket.

Hetzner Stops Selling Hardware Types and Starts Selling Generations: What CPX Gen2 and CX Gen3 Do to Your Machine Templates
Hetzner restructured its cloud catalog from hardware types to hardware generations in June 2026. A concrete look at what generation-named SKUs break in Cluster API machine templates and how to write templates that survive the next reshuffle.

Omni's One-Postgres Workplace Search: Running BM25 and Vectors in a Single Database as a Tenant Workload
Omni indexes wikis, docs, and drives with ParadeDB BM25 and pgvector in one Postgres, deployable with docker compose up. A walkthrough of the one-database pattern and why it runs as just another tenant on a self-hosted PaaS.

ExternalDNS: The Controller That Turns Every Ingress Into a DNS Record (and What Breaks at Fleet Scale)
ExternalDNS watches Kubernetes Service, Ingress, and Gateway API objects and syncs DNS records to your provider automatically. A concrete walkthrough of the reconciliation loop, TXT ownership registry, rate-limit wiring, and fleet-scale pitfalls — and why you shouldn't hand-roll this.

Cloudflare OS Is Open Source — But Only Runs on Cloudflare: What That Means Compared to Apache-2.0 on Your Own Machines
Cloudflare OS open-sourced an agent workspace on August 5 that only deploys into a Cloudflare account — zero-access agents, Gatekeeper Workers, and Dynamic Workers with per-app SQLite. What that flavor of open actually controls next to an Apache-2.0 PaaS on machines you own.

Cluster API Stops Serving v1beta1 in v1.16: The Seven-Row Migration Audit Every CAPI Platform Owes Itself Before April 2027
Cluster API's v1beta1 API stops being served in v1.16, April 2027 — and CAPD's Docker resources are removed a release earlier. Here's the seven-place audit, what clusterctl convert does and doesn't cover, and how to sequence the upgrade as management-cluster Kubernetes support narrows to v1.33-v1.36.

KEDA v2.20's One-Line RBAC Change Silenced Your Autoscaler's Events for 60 Days
KEDA v2.20 swapped the operator's events RBAC from the core API group to events.k8s.io and dropped the old one — so every KEDA event was forbidden on the default install for 60 days. The exact rule to grant, who actually has to act, and the pre-upgrade checklist for a fleet whose scale-from-zero runs through one controller.

Talos v1.14 Puts a BGP Speaker Inside the OS: What It Actually Deletes (Not MetalLB), and Who Can Actually Use It (Not Hetzner)
Talos v1.14's embedded GoBGP doesn't replace MetalLB — it takes the BGP session your routers hold with a Kubernetes pod and moves it into machine config. A priced comparison of BGP, L2 announcement, and provider load balancers, the two-instance wiring that actually works, and why Hetzner fleets are locked out.

Bring Your Own Hetzner Account: Edka, Cluster API, and the Token With Only Two Permission Levels
A 3-node Hetzner cluster priced three ways — closed PaaS, a BYO-account control plane, and DIY Cluster API — plus the uncomfortable detail underneath all of it: a Hetzner API token has exactly two permission levels and one scope.