Terraform
Terraform is an open-source infrastructure-as-code tool for defining, provisioning, and managing infrastructure resources through declarative configuration.
Terraform in Depth: Infrastructure as Code with Terraform and OpenTofu
The Terraform language is a declarative configuration language for defining infrastructure resources and their relationships.
- How it is used
- Uses declarative configuration to create, update, and reuse infrastructure across deployments.
- How deep it goes
- Explains blocks, providers, state, dependency ordering, and the init–plan–apply workflow; defers deeper dependency debugging.
- Examples
- Uses an AWS instance deployment, a reusable VPC, and database-to-application dependencies as concrete cases.
- What you can do after
- Operate/configure it to define resources, review a plan, and apply infrastructure changes through the CLI.
Read how Terraform in Depth: Infrastructure as Code with Terraform and OpenTofu explains Terraform →
Acing the CCNA Exam: Volume 2 Advanced Networking and Security
Terraform is an open-source infrastructure-as-code tool for defining and provisioning infrastructure through declarative configuration files.
- How it is used
- Provisions new infrastructure through declarative configuration rather than primarily managing existing device configurations.
- How deep it goes
- Explains classification, architecture, state comparison, providers, and the Write–Plan–Apply workflow, without detailed provider configuration.
- Examples
- Uses servers, databases, networks, cloud providers, HCL files, plans, applies, and Terraform state as concrete artifacts.
- What you can do after
- Operate/configure Terraform by defining infrastructure, reviewing a plan, applying changes, and distinguishing provisioning from configuration management.
Read how Acing the CCNA Exam: Volume 2 Advanced Networking and Security explains Terraform →
AI-Powered Developer: Build software with ChatGPT and Copilot
Terraform is an infrastructure-as-code tool for defining and provisioning infrastructure through declarative configuration.
- How it is used
- Defines and provisions AWS EC2 infrastructure as code for consistent, reproducible application deployments.
- How deep it goes
- Explains a generated EC2 file, provider, instance, Docker bootstrap, key pair, and security group, while only suggesting deeper VPC design.
- Examples
- Uses us-west-2, a t2.micro EC2 instance, Docker user-data commands, and an nginx container as configuration examples.
- What you can do after
- Build it from scratch by generating, reviewing, correcting, and versioning Terraform files for an AWS EC2 deployment.
Read how AI-Powered Developer: Build software with ChatGPT and Copilot explains Terraform →
Effective Platform Engineering
Terraform is an infrastructure-as-code tool for declaratively provisioning and managing infrastructure resources.
- How it is used
- Uses declarative resource definitions to configure cloud-vendor infrastructure and build opinionated internal platform components.
- How deep it goes
- Explains framework selection, platform-module scope, and a static-analysis workflow, stopping short of Terraform language internals.
- Examples
- Uses main.tf, Terraform CLI commands, Tflint with AWS rules, and Trivy configuration scans as working artifacts.
- What you can do after
- Apply it via Terraform CLI, Tflint, and Trivy to validate, format, lint, and security-scan infrastructure code.
Read how Effective Platform Engineering explains Terraform →
Google Anthos in Action
Terraform is an open-source infrastructure-as-code tool for provisioning and managing infrastructure through declarative configuration.
- How it is used
- Defines target cloud infrastructure declaratively during GKE on AWS installation.
- How deep it goes
- Explains declarative configuration, target state, providers, and generated code, but does not detail Terraform command execution.
- Examples
- Uses GKE on AWS installation, an AWS provider, generated Terraform code, EC2 instances, and load balancers.
- What you can do after
- Build GKE on AWS infrastructure from declarative configuration through Terraform providers.
Related concepts
- Bicepalternative to · Bicep is a declarative domain-specific language for defining and deploying Azure resources through Azure Resource Manager.
- declarative programminguses · Declarative programming is a programming paradigm that specifies desired results, states, relationships, or rules without prescribing the step-by-step operations that produce them.
- Terraform state fileproduces · A file that persistently records Terraform’s representation of managed infrastructure resources and their attributes, linking configuration to real-world instances.
- infrastructure as codeimplements · Infrastructure as code is the practice of defining, provisioning, and managing computing infrastructure through machine-readable code or configuration rather than manual procedures.
- Terraform provideruses · A Terraform provider is a plugin that enables Terraform to manage resources and data sources on a specific infrastructure platform or service through its API.
- HashiCorp Configuration Languageuses · HashiCorp Configuration Language (HCL) is a human-readable declarative language for expressing structured configuration, including infrastructure and service definitions.
These guides are generated from the text of Manning books by Manning's knowledge graph and link to the sections they draw on. The full books are available on liveBook and at manning.com.




