Posts

Showing posts with the label platform-engineering

A Modern Terraform Reference Architecture for Amazon EKS

Image
A Modern Terraform Reference Architecture for Amazon EKS Most EKS failures are not Kubernetes failures. They are boundary failures between Terraform state , VPC capacity, node provisioning, and workload identity. This guide lays out a production-ready reference architecture that keeps those seams explicit. TL;DR A modern Terraform reference architecture for Amazon EKS should separate network, cluster, and add-on state; reserve private subnet capacity for control-plane ENIs and pods; keep a small stable baseline of managed nodes; use Karpenter for bursty or heterogeneous workloads; and choose workload identity deliberately instead of treating IRSA and EKS Pod Identity as interchangeable. The goal is not just to create a cluster, but to make upgrades, add-on lifecycle, IAM boundaries, and node replacement predictable. If you design those boundaries early, EKS gets much easier to operate. A production EKS architecture works better when Terraform state, networking, compute, identity...

Operators vs Helm for Platform Teams: Install with Charts, Automate with Controllers

Image
Operators vs Helm for Platform Teams: Install with Charts, Automate with Controllers Platform teams should stop treating Operators and Helm as interchangeable. Helm is strong at packaging and releases; Operators justify their cost when you need continuous reconciliation and day-2 automation. TL;DR Operators and Helm solve different layers of the Kubernetes problem. Helm gives platform teams a repeatable way to package, configure, install, upgrade, and roll back applications. Operators add a controller and usually a custom resource, which lets you encode domain-specific operational behavior such as backup flows, failover, scaling rules, and safe upgrades. If your workload mostly needs installation and versioned configuration, Helm is usually enough. If you need software-specific automation after install, an Operator is the right abstraction. Many teams get the best result by combining both. Platform teams often combine both: Helm for packaging and Operators for ongoing reconciliation...