Infrastructure as a Code (IAC).
Managing infrastructure on file instead of a GUI.
You can change and manage infrastructure in a consistent and repeatable way.
Supports multiple cloud platforms
Human readable
State = track resource changes
Terraform Cloud = version control and collaborate as team
Providers = API for interacting with various cloud platforms
Terraform registry holds the list of providers
These are provided as plugins
Source of truth for infrastructure changes.
Terraform uses this file to determine changes to match your configuration.
AWS SDK for Python (Boto3)