github.com/muratcelep/terraform@v1.1.0-beta2-not-internal-4/website/intro/index.html.markdown (about) 1 --- 2 layout: "intro" 3 page_title: "Introduction" 4 sidebar_current: "what" 5 description: |- 6 Learn what Terraform is, what problems it can solve, and how it compares to existing software. 7 --- 8 9 # Introduction to Terraform 10 11 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. 12 13 Below, HashiCorp co-founder and CTO Armon Dadgar describes how Terraform can help solve common infrastructure challenges. 14 15 <iframe src="https://www.youtube.com/embed/h970ZBgKINg" frameborder="0" allowfullscreen="true" width="560" height="315" ></iframe> 16 17 18 19 ## Key Features 20 21 ### Infrastructure as Code 22 23 You describe your infrastructure using Terraform's high-level [configuration language](/docs/language/index.html) in human-readable, declarative configuration files. This allows you to create a blueprint that you can version, share, and reuse. 24 25 ### Execution Plans 26 27 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. 28 29 ### Resource Graph 30 31 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. 32 33 ### Change Automation 34 35 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. 36 37 38 39 ## Next Steps 40 41 - Learn about common [Terraform use cases](/intro/use-cases.html). 42 - Learn [how Terraform compares to and complements other tools](/intro/vs/index.html). 43 - Try the [Terraform: Get Started](https://learn.hashicorp.com/collections/terraform/aws-get-started) tutorials on HashiCorp Learn.