terraform/website/intro/index.mdx

39 lines
2.1 KiB
Plaintext
Raw Normal View History

2014-07-16 23:51:48 +02:00
---
2021-12-15 03:41:17 +01:00
page_title: Introduction
description: >-
Learn what Terraform is, what problems it can solve, and how it compares to
existing software.
2014-07-16 23:51:48 +02:00
---
# Introduction to Terraform
2021-07-01 16:34:41 +02:00
Terraform is an infrastructure as code (IaC) tool that allows you to build, change, and version infrastructure safely and efficiently. This includes low-level components such as compute instances, storage, and networking, as well as high-level components such as DNS entries, SaaS features, etc. Terraform can manage both existing service providers and custom in-house solutions.
Below, HashiCorp co-founder and CTO Armon Dadgar describes how Terraform can help solve common infrastructure challenges.
2014-07-23 21:04:02 +02:00
2021-12-15 03:41:17 +01:00
<iframe src="https://www.youtube.com/embed/h970ZBgKINg" frameBorder={0} allowFullScreen width={560} height={315} />
## Key Features
2014-07-23 21:04:02 +02:00
2017-04-06 20:02:56 +02:00
### Infrastructure as Code
2021-12-15 03:41:17 +01:00
You describe your infrastructure using Terraform's high-level [configuration language](/language) in human-readable, declarative configuration files. This allows you to create a blueprint that you can version, share, and reuse.
2017-04-06 20:02:56 +02:00
### Execution Plans
2021-07-01 16:34:41 +02:00
Terraform generates an _execution plan_ describing what it will do and asks for your approval before making any infrastructure changes. This allows you to review changes before Terraform creates, updates, or destroys infrastructure.
2017-04-06 20:02:56 +02:00
### Resource Graph
2021-07-01 16:34:41 +02:00
Terraform builds a resource graph and creates or modifies non-dependent resources in parallel. This allows Terraform to build resources as efficiently as possible and gives you greater insight into your infrastructure.
2017-04-06 20:02:56 +02:00
### Change Automation
2021-07-01 16:34:41 +02:00
Terraform can apply complex changesets to your infrastructure with minimal human interaction. When you update configuration files, Terraform determines what changed and creates incremental execution plans that respect dependencies.
2014-07-16 23:51:48 +02:00
## Next Steps
2021-12-15 03:41:17 +01:00
- Learn about common [Terraform use cases](/intro/use-cases).
- Learn [how Terraform compares to and complements other tools](/intro/vs).
- Try the [Terraform: Get Started](https://learn.hashicorp.com/collections/terraform/aws-get-started) tutorials on HashiCorp Learn.