Home

Terraform

Terraform is an open-source infrastructure as code tool created by HashiCorp. It enables users to provision, change, and version infrastructure across multiple cloud providers and on-premises systems by describing desired resources in declarative configuration files. The primary configuration language is HashiCorp Configuration Language (HCL), though JSON can also be used.

Terraform configurations define providers, resources, data sources, variables, and outputs. Providers are plugins that integrate with

The typical workflow includes initializing the working directory with terraform init, previewing changes with terraform plan,

Providers and ecosystems: Terraform supports a wide range of providers for public clouds (AWS, Azure, Google

Use cases include reproducible environments, multi-cloud provisioning, and automated infrastructure pipelines. Considerations include managing sensitive data

service
APIs
(such
as
cloud
platforms,
virtualization
platforms,
or
SaaS
services).
Terraform
builds
a
dependency
graph
from
the
configuration
to
determine
the
correct
order
of
operations
for
creating,
updating,
or
destroying
resources.
It
maintains
a
state
file
that
maps
real-world
resources
to
their
configuration,
enabling
drift
detection
and
incremental
changes.
State
can
be
stored
locally
or
remotely
using
backends,
which
may
offer
encryption
and
locking
for
safe
collaboration.
and
applying
changes
with
terraform
apply.
Users
can
import
existing
resources
into
state
and
organize
configurations
into
reusable
modules.
Remote
backends
and
services
like
Terraform
Cloud
support
team
collaboration,
policy
enforcement,
and
centralized
state
management.
Cloud),
Kubernetes,
virtualization
platforms,
and
numerous
SaaS
offerings.
The
platform's
registry
hosts
many
community
and
vendor-backed
providers,
enabling
multi-cloud
and
hybrid
deployments.
in
state,
choosing
appropriate
backends,
and
handling
potential
drift
between
configuration
and
live
resources.