~/bookshelf/terraform-up-and-running
book notes · finished
Terraform: Up & Running (3rd edition)
The book that turned my Terraform from scripts into a platform. Most of infra-ops is this book plus scars.

- author
- Yevgeniy Brikman
- published
- 2022
- pages
- 460
- my rating
- read
- 2025-12-05
- views
On this page
key takeaways
- 01State is the product. Protect it (remote, locked, versioned) before you write a second resource.
- 02Modules are APIs: version them, test them, keep their inputs boring.
- 03Workspaces are not environments. Directories per environment with shared modules scale; workspaces hide blast radius.
- 04Plan output is the review artifact; make it visible in the PR.
Why it stuck
I'd used Terraform for a year before reading this and had already made the two classic mistakes: local state and one giant root module. Brikman explains why those hurt and what the alternatives cost.
Applied
- The directory-per-environment layout, versioned modules and S3 + DynamoDB state in infra-ops: one Terraform + Ansible platform for dev, staging and prod are straight from chapters 3 and 4.
- The testing chapter convinced me to run
terraform planon every PR and post it as a comment; that one habit catches most mistakes. - The book's "Terraform is for provisioning, use something else for configuration" stance is the argument in Infrastructure as Code: Bridging Terraform and Ansible.
Reservations
The 3rd edition predates some newer testing-framework features and the OpenTofu fork, so treat the tooling chapters as direction rather than exact commands.
Linked from
Related notes
Feb 20, 2026infra-ops: one Terraform + Ansible platform for dev, staging and prodRead Jun 10, 2026Infrastructure as Code: Bridging Terraform and AnsibleA deep dive into how Terraform and Ansible complement each other in modern infrastructure provisioning and configuration management.Read Jun 28, 2026Three rules for Terraform stateRemote, locked, and small. Most Terraform pain is one giant state file that everyone is afraid to plan.Read
Discussion (0)
name + comment · no login