Terraform provider
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.
Terraform in Depth: Infrastructure as Code with Terraform and OpenTofu
A provider server is the running implementation of a Terraform provider that serves provider operations to Terraform.
- How it is used
- Connects Terraform’s infrastructure configuration to vendor systems through resources, data sources, and functions.
- How deep it goes
- Explains installation and configuration, then develops provider interfaces and server testing without requiring users to learn gRPC.
- Examples
- Uses an AWS provider installation and a Mastodon configuration with an account lookup and post resource.
- What you can do after
- Build it from scratch with Go and the Terraform Plugin Framework, or operate/configure an existing provider through its registry documentation.
Acing the CCNA Exam: Volume 2 Advanced Networking and Security
A Terraform provider is a plugin that implements resource-management interactions with a particular infrastructure or service platform.
- How it is used
- Connects Terraform Core to infrastructure platforms for declarative provisioning and resource management.
- How deep it goes
- Explains provider communication through APIs and state comparison, but does not detail provider implementation internals.
- Examples
- Uses AWS, Azure, GCP, VMware vSphere, OpenStack, Kubernetes, Catalyst Center, ACI, and IOS XE as platform examples.
- What you can do after
- Operate/configure infrastructure resources through Terraform configuration, planning, application, and provider APIs.
Bootstrapping Microservices, Second Edition: With Docker, Kubernetes, GitHub Actions, and Terraform
A Terraform provider is a plugin that enables Terraform to interact with a specific infrastructure platform or service through its API.
- How it is used
- Extends Terraform so infrastructure code can target multiple cloud platforms and services.
- How deep it goes
- Explains declaration, version pinning, initialization, downloading, and caching, but does not detail provider implementation internals.
- Examples
- Uses an Azure resource group, providers.tf, terraform init, the .terraform cache, and an azurerm version constraint.
- What you can do after
- Operate/configure Terraform projects that download, constrain, and use providers for cloud infrastructure.
Google Anthos in Action
A Terraform provider is a plugin that maps Terraform resources and operations to an external platform's provisioning API.
- How it is used
- Maps declarative Terraform code to AWS provisioning APIs while instantiating GKE on AWS infrastructure.
- How deep it goes
- Defines providers and demonstrates their AWS role, but stops short of provider implementation internals.
- Examples
- Uses the Terraform AWS provider to create GKE on AWS components and generate deployment configuration.
- What you can do after
- Operate/configure AWS infrastructure declaratively through Terraform-driven GKE on AWS installation workflows.
Read how Google Anthos in Action explains Terraform provider →
Related concepts
- root moduleconfigured by · A root module is the Terraform module defined by the configuration files in the current working directory and serving as the entry point for a Terraform operation.
- Terraformused by · Terraform is an open-source infrastructure-as-code tool for defining, provisioning, and managing infrastructure resources through declarative configuration.
- terraform initused by · terraform init is a Terraform command that initializes a working directory and installs or configures its required providers, modules, and backend.
- provider blockconfigured by · A provider block is a Terraform configuration block that configures a provider's settings, such as the target cloud region.
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.



