infrastructure as code
- Definition
- Defining and provisioning infrastructure through machine-readable definition files rather than manual console clicks.
- Why it matters
- Repeatable — the same template produces an identical environment every time, in any Region or account.
- Version controlled — infrastructure changes get reviewed, diffed, and rolled back like application code.
- Auditable — the template is the documentation.
- Disaster recovery — rebuild a whole environment from a file.
- Eliminates configuration drift and human error.
- AWS tooling
- AWS CloudFormation — the native declarative service. Free; you pay only for the resources.
- AWS CDK — define infrastructure in TypeScript, Python, Java; synthesizes to CloudFormation.
- AWS SAM — a CloudFormation extension specialized for serverless.
- Terraform — the common third-party, multi-cloud alternative.
- Ties to
- The Operational Excellence pillar — “perform operations as code”. See Operational Excellence.