Terraform modules are reusable, self-contained packages of Terraform configuration that encapsulate related resources into a single logical unit for consistent infrastructure provisioning.
A Terraform module is a directory containing .tf files that define a set of related resources. The root module is the directory where you run terraform apply. Child modules are called from the root module using module blocks.
Modules accept input variables, create resources, and expose output values—forming a clean interface for infrastructure components.
Cloud Posse maintains hundreds of production-ready Terraform modules covering AWS services from VPC networking to EKS clusters, IAM policies, and monitoring. These modules follow consistent patterns for naming, tagging, and configuration, making them composable building blocks for enterprise infrastructure.
The companion to 'Terraform the Hard Way.' Same twenty-one crossroads, framed against what each one looks like under a framework that's already made the decisions. With concrete Atmos snippets at every step.
A guided checklist of every decision you'll make on the road from `terraform apply` to production. Not a recommendation — an education. Borrowed in spirit from Kelsey Hightower's 'Kubernetes the Hard Way.'
An internal developer platform is the icing on the cake — the reward for getting the foundation underneath into shape. Here's what I've learned about when the icing actually delivers, and why a framework matters more than the portal.
Teams keep telling themselves infrastructure is simple. 'It's just Terraform.' 'A contractor can clean it up.' Here's what those assumptions actually cost.
Open source Terraform module libraries are infrastructure's equivalent of npm and PyPI—battle-tested foundations that become even more critical when AI enters the picture.