25 lines
1.3 KiB
Text
25 lines
1.3 KiB
Text
Terraform is a tool for building, changing, and versioning infrastructure safely
|
|
and efficiently. Terraform can manage existing and popular service providers as
|
|
well as custom in-house solutions.
|
|
|
|
The key features of Terraform are:
|
|
|
|
- Infrastructure as Code: Infrastructure is described using a high-level
|
|
configuration syntax. This allows a blueprint of your datacenter to be versioned
|
|
and treated as you would any other code. Additionally, infrastructure can be
|
|
shared and re-used.
|
|
|
|
- Execution Plans: Terraform has a "planning" step where it generates an
|
|
execution plan. The execution plan shows what Terraform will do when you call
|
|
apply. This lets you avoid any surprises when Terraform manipulates
|
|
infrastructure.
|
|
|
|
- Resource Graph: Terraform builds a graph of all your resources, and
|
|
parallelizes the creation and modification of any non-dependent resources.
|
|
Because of this, Terraform builds infrastructure as efficiently as possible, and
|
|
operators get insight into dependencies in their infrastructure.
|
|
|
|
- Change Automation: Complex changesets can be applied to your infrastructure
|
|
with minimal human interaction. With the previously mentioned execution plan and
|
|
resource graph, you know exactly what Terraform will change and in what order,
|
|
avoiding many possible human errors.
|