Skip to main content
TrustRadius
HashiCorp Terraform

HashiCorp Terraform

Overview

What is HashiCorp Terraform?

Terraform from HashiCorp is a cloud infrastructure automation tool that enables users to create, change, and improve production infrastructure, and it allows infrastructure to be expressed as code. It codifies APIs into declarative configuration files that can be shared amongst…

Read more
Recent Reviews

TrustRadius Insights

Fast and Reliable Infrastructure Deployment: Users appreciate Terraform's ability to deploy infrastructure quickly and reliably. Several …
Continue reading

Terraform Review

8 out of 10
July 12, 2021
Terraform is currently being used to deploy infrastructure to GCP. We are mindful of the fact that some components might need other cloud …
Continue reading

Terraform Review

9 out of 10
February 15, 2021
Incentivized
We use Terraform to deploy our infrastructure into AWS at an enterprise level. We support more than 700 developers across different brands …
Continue reading
Read all reviews

Reviewer Pros & Cons

View all pros & cons
Return to navigation

Pricing

View all pricing

Open Source

$0

Cloud

Team & Governance

$20/user

Cloud
per user/per month

Enterprise

Contact sales team

Cloud

Entry-level set up fee?

  • No setup fee
For the latest information on pricing, visithttps://www.hashicorp.com/products/terr…

Offerings

  • Free Trial
  • Free/Freemium Version
  • Premium Consulting/Integration Services
Return to navigation

Product Demos

Infrastructure Pipelines with Terraform Cloud

YouTube
Return to navigation

Product Details

What is HashiCorp Terraform?

HashiCorp Terraform is an infrastructure as code tool that lets the user define both cloud and on-prem resources in human-readable configuration files that the user can version, reuse, and share. A consistent workflow can then be used to provision and manage infrastructure throughout its lifecycle. Terraform can manage low-level components like compute, storage, and networking resources, as well as high-level components like DNS entries and SaaS features.

Terraform creates and manages resources on cloud platforms and other services through their application programming interfaces (APIs). Providers enable Terraform to work with virtually any platform or service with an accessible API.

HashiCorp Terraform Features

  • Supported: Manage any Infrastructure
  • Supported: Track your infrastructure
  • Supported: Automate changes
  • Supported: Standardize configurations

HashiCorp Terraform Screenshots

Screenshot of Terraform StateScreenshot of Terraform RunsScreenshot of Terraform VariablesScreenshot of Terraform WorkspacesScreenshot of Terraform Cost Estimation

HashiCorp Terraform Technical Details

Deployment TypesSoftware as a Service (SaaS), Cloud, or Web-Based
Operating SystemsUnspecified
Mobile ApplicationNo

Frequently Asked Questions

Terraform from HashiCorp is a cloud infrastructure automation tool that enables users to create, change, and improve production infrastructure, and it allows infrastructure to be expressed as code. It codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned. It is available Open Source, and via Cloud and Self-Hosted editions.

Red Hat Ansible Automation Platform, Jenkins, and GitHub are common alternatives for HashiCorp Terraform.

Reviewers rate Performance highest, with a score of 9.4.

The most common users of HashiCorp Terraform are from Enterprises (1,001+ employees).
Return to navigation

Comparisons

View all alternatives
Return to navigation

Reviews and Ratings

(122)

Community Insights

TrustRadius Insights are summaries of user sentiment data from TrustRadius reviews and, when necessary, 3rd-party data sources. Have feedback on this content? Let us know!

Fast and Reliable Infrastructure Deployment: Users appreciate Terraform's ability to deploy infrastructure quickly and reliably. Several reviewers have mentioned that they were able to provision resources efficiently, saving them time and effort in the deployment process.

Modular Approach with Reusable Modules: The use of modules in Terraform is highly valued by users, as it enables repeatability and encourages code reuse. Many reviewers have stated that they find it easy to share and reuse functionality across deployments, promoting collaboration and consistency among teams.

Large Ecosystem of Modules for Various Providers: Users highly value the extensive ecosystem of modules available in Terraform for various providers. Numerous reviewers have stated that this allows them to easily access strong default configurations for many services, saving them time and effort in setting up their infrastructure.

Complex Documentation: Many users have found the documentation for the new language to be complex and lacking clear explanations, making it difficult for them to understand and use Terraform effectively. They express frustration with the lack of concise and intuitive explanations in the documentation, which hinders their ability to grasp key concepts.

Challenging Rollback Operations: Users have expressed difficulty in performing rollback operations as it must be done through version control. This process is seen as cumbersome and unintuitive, requiring extra steps that could be simplified with a dedicated rollback feature within Terraform itself.

Unusual Language Design: The language used in Terraform is considered unusual by many users, which makes it challenging for new users to understand and navigate the codebase. Some users find it unconventional compared to other infrastructure-as-code tools, leading to confusion when reading or modifying existing code.

Users have provided several recommendations for Terraform based on their experiences with the tool for automating cloud infrastructure management.

First, users suggest taking the time to understand and implement Terraform modules properly. This recommendation emphasizes the importance of familiarizing oneself with the module system in order to effectively leverage the capabilities of Terraform.

Second, users recommend reading through the documentation and reaching out to Hashicorp for assistance when facing issues. By doing so, users believe that they can overcome any challenges they encounter and make the most of Terraform's features.

Lastly, some users advise considering other Infrastructure as Code (IaC) platforms, but acknowledge that Terraform is a great and flexible open-source option. This recommendation highlights the need for users to evaluate different options before making a final decision on their cloud infrastructure automation tool.

Attribute Ratings

Reviews

(1-19 of 19)
Companies can't remove reviews or game the system. Here's why
Eric Mintz | TrustRadius Reviewer
Score 5 out of 10
Vetted Review
Verified User
I'm beginning to look at Pulumi. In my opinion, it looks like it would be a good replacement for HashiCorp Terraform, and it has the advantage of configuration via scripting, rather than via HCL, which is HashiCorp Terraform configuration markup language. In my opinion, the Pulumi scripts look simpler to develop and maintain than the HCL equivalent.
Score 9 out of 10
Vetted Review
Verified User
We have used Vagrant to develop our application in a virtual box environment and prepare it to be packed with Packer. The image created from these two tools will be deployed by Terraform.

We are using Consul for service discovery and as a job locking so we don't have two jobs or the same job running more than once at the same time, we haven't use any combination of Terraform with Consul except that Terraform will provision the Consul servers.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
CloudFormation is only for AWS so if you're trying to deploy to another cloud provider then Terraform is your product. Terraform has lots of public support so you can find answers to questions by Googling. CloudFormation is easy to view the resources/services that are deployed using those stacks which is better than Terraform supplies but I don't think that outweighs the ease of learning and deploying that Terraform has. Also, with Terraform you can deploy easily to multiple environments with few commands, which CloudFormation can't do. Using a tool such as Runway allows you to setup deployments so they can be automated to multiple environments at a time.
Score 8 out of 10
Vetted Review
Verified User
Incentivized
AWS CloudFormation is better if you just want to stick with AWS because it's integration with AWS is better, provides auto-rollback in case of failures, and has GUI to manage and view the stacks built. Terraform is better when we want to stay cloud-agnostic. Terraform is better if we are using multiple cloud resources for our solution.
Guillermo Buritica Tobon | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Actually both products work very well. We use Terraform for speed and Ansible for configuration management both products work really well together
February 12, 2021

Terraform Review

Jude Allred | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
Terraform is a large step ahead of the previous generation of infrastructure-as-code providers. I'd never go back to, e.g. Puppet or Chef, Ansible, etc. That said I think that Pulumi has a good chance of displaying it, in no small part because the Terraform language itself is a barrier to adoption. In a greenfield project I'd likely start with Pulumi, but for a while I expect Terraform to stay in the lead in terms of existing integrations.
Michael Jenkins | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
I can't find these applications listed, but other IaC tools I have used include: AWS CloudFormation, Azure Resource Manager Templates, and GCP Cloud Deployment Templates. For a comparable tool, I have the most experience with CloudFormation.

Compared to CloudFormation, the first benefit that Terraform has is the the code format. That is, CloudFormation is more of a document in YAML or JSON while Terraform is more code-like in structure. This makes it more similar to other programming languages that engineers may be familiar with. In fact, the times that I've worked with CloudFormation, I've used other code (Python with the Troposphere library) to generate the CloudFormation YAML.

Terraform also lends itself to breaking out code into smaller pieces. That is, for a single project, different parts of it can be represented in different files. For example, all the EC2 resources in one file and all the RDS resources in another file, and so on. With CloudFormation, all resources are represented in one file. For large projects this can become unwieldy when trying to track down specific resources. For versioned code (and shouldn't all code be versioned?) tracking changes may also become difficult with one, monolithic file.

Lastly, I will mention state management. I _do_ appreciate that CloudFormation manages state for the user without question; it's one less thing to worry about. However, I appreciate the fact that Terraform gives options for storing state and the ability to examine it outside of the resource implementation process. Honestly, this is a minor detail but sometimes it comes in handy.
Score 9 out of 10
Vetted Review
Verified User
Incentivized
  • Chef
Chef and Terraform are not apples to apples because Chef is more focused on config management, whereas Terraform is more focused on provisioning. However, I can say that where they do overlap in configuration management is that Terraform is the preferred tool because it has an immutable data model and so is much less prone to errors and hard-to-find bugs. Chef also requires a master server to maintain state, whereas Terraform does not.
Jeffrey Severance | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
Terraform is the solid leader in the space. It allows you to do more then just provisioning within a pre-existing servers. It is more extensible and has more providers available than it competitors. It is also open source and more adopted by the community then some of the other solutions that are available in the market place.
Dhruba Jyoti Nag | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
Terraform is open source and has strong community support. It is cloud-agnostic versus competing products like AWS cloud formation, hence has a distinct advantage. The scripts once set up are easy for developers to administer during development, hence during production releases, solution developers can manage the entire process without the need for admins.
August 15, 2017

Why I used Terraform

Murugan Mani | TrustRadius Reviewer
Score 9 out of 10
Vetted Review
Verified User
Incentivized
  • UI design and development always sticks when it comes to multiple or say 'n' number of same configurations.
  • It's very easy to download and execute
  • Provides cross platform support and it's reliable.
February 15, 2017

DevOps person

Deepshikha Gandhi | TrustRadius Reviewer
Score 8 out of 10
Vetted Review
Verified User
Incentivized
  • Cloudformation
Terraform shares the methodology of creating configuration files for your infrastructure with tools like CloudFormation. However, Terraform is cloud-agnostic unlike CloudFormation which is AWS specific.
Terraform can be used to maintain AWS and OpenStack clusters simultaneously. You can use the same syntax instead of running non-interoperable tools for each of them.
Terraform also empowers you to test/dry-run your changes before actually applying by running "terraform plan", so you can apply with confidence.
Charles Anderson | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User
Incentivized
  • AWS CloudFormation
CloudFormation is the lingua franca of AWS. You certainly can't go wrong using it, but I like the syntax and open-source nature of Terraform. That's mostly a personal preference. I have not tried any other non-Amazon tools for provisioning AWS. And, of course, the AWS tools don't work for non-Amazon clouds like Google or Azure.
Return to navigation