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…
HashiCorp Terraform - make IT boring again (in a good way...)
Terraform - Codify your infrastructure
The main reason for using Terraform is to allow us to reliably …
The de facto tool for provisioning infrastructure today
Cloud Engineer review of Terraform
Terraform - Best Cloud-agnostic Infrastructure Provisioning Tool.
Terraform Review
Really good tool for Infrastructure
Terraform for Automation
Terraform Review
Terraform Review
Terraform is the Perfect Tool for Building Infrastructure as Code
Infrastructure as code, finally!
Infrastructure Configured
A great automation tool for everyone
Makes your environment more reliable and easily replicable.
Pricing
Open Source
$0
Team & Governance
$20/user
Enterprise
Contact sales team
Entry-level set up fee?
- No setup fee
Offerings
- Free Trial
- Free/Freemium Version
- Premium Consulting/Integration Services
Product Demos
Infrastructure Pipelines with Terraform Cloud
Product Details
- About
- Competitors
- Tech Details
- FAQs
What is HashiCorp Terraform?
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
HashiCorp Terraform Competitors
HashiCorp Terraform Technical Details
Deployment Types | Software as a Service (SaaS), Cloud, or Web-Based |
---|---|
Operating Systems | Unspecified |
Mobile Application | No |
Frequently Asked Questions
Comparisons
Compare with
Reviews and Ratings
(128)Community Insights
- Pros
- Cons
- Recommendations
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-5 of 5)Cloud Engineer review of Terraform
- Provides detailed examples with documentation
- Allows public modules to be easily used for simple coding
- Easy setup and deployment to start writing Terraform
- Finding what resources and services are created by Terraform within a cloud environment - you can use tags but it is not as easy as it can be.
- Provide direction on proper coding and best practices of how to setup the templates/modules.
- Public support
- Reuse of modules and code
- Simple and consistent method to deploy architecture to the cloud
- Decrease time to failover to a disaster recovery region/environment to minutes versus hours
- Decrease time to setup new environment from days to minutes/hours
- Reduce the amount of time needed to deploy architecture by reusing code that we have developed internally along with using publicly available modules.
Using Terraform to Automate Your Future
- AWS Resource Provisioning: Terraform is great at provisioning resources within AWS. Sometimes, there are some tricky bits when it interacts with the AWS API, but those are typically API limitations with AWS and not reflective of Terraform's abilities.
- State: Since using Terraform, I have not had any issue managing resource state using Terraform. It's a little tricky to set up remote state, but once implemented it's smooth sailing from then on in my experience.
- Extensibility: Terraform has really been written as a gateway to bigger and better things. It's so easy to extend terraform with your own modules, to submit PRs with new functionality, and it integrates well with other tooling.
- Upgrades: It's really hard to do major upgrades of terraform without breaking something. The upgrade from 11 to 12 has been pretty brutal.
- Setting up remote state: Despite pretty good documentation, setting up remote state initially is pretty tricky and in my experience required a little of the "you have to run it this way once, then create this thing, then run it again" kind of workflows which are always a little painful
Terraform: a great infrastructure as a code tool
- Terraform is a premier IAAS tool.
- It provides modularization and planning features.
- It is platform and language agnostic.
- It is open source and thus has strong community support.
- Terraform is vulnerable when it comes to error handling.
- Often when a terraform job is terminated midway, it leads to an inconsistent state of the deployed resources which needs manual cleanup.
- Terraform is an open source tool and has a related learning curve.
- Deployment to cloud has been made easier.
- Developers do not need to know much, they can just do minor tweaks by changing variables and parameters here and there and manage to deploy to AWS.
- This has resulted in dollar benefits because deployment through the script is error-free compared to manual deployment.
Infrastructure as Code Done Right!
- Great implementation of Infrastructure as Code concept.
- Supports various cloud providers, including AWS, Azure and OpenStack
- Encourages good design practices
- Collaboration is made possible by using remote backend to store state files (such as S3)
- Product is still maturing and there are some design limitation
- Refactoring infrastructure code can sometimes become troublesome and unnecessarily require re-creating resources (such as when renaming resources)
- Collaboration requires proper training or could result in dangerous outcome, engineers may easily overwrite remote state file or step on each other's toes. Collaboration process needs some improvement.
- Terraform is open source and free and learning curve is medium. It is an amazing investment overall that leads businesses to have a clean and well-maintained inventory
- Terraform simplifies orchestrating complex infrastructure setups, such as clusters that involve different types of AWS resources can be templated and reused to provision new environments or rebuild existing ones, making the business truly agile.
- Conventions can be enforced be using organization-level modules, such as naming conventions, tagging requirements,..etc
- Cloud Formation
Terraform Improved our World
- Configuration as Code in a modular reusable manner.
- The plan apply life cycle is the best, it gives structure to what can sometimes be a scary process of modifying your infrastructure - even after it has aged or hasn't been touched in years.
- Integrating with many outside services and providers keeps us from having to hack things together.
- Integration with Hashicorp's Vault for secret management and temporary credentials makes giving out access a breeze.
- It's a command-line tool and as such, some users in our organization are not comfortable with that. We ended up wrapping the tool with a UI to give the less skilled users access as well as layering on top a templating system to abstract away best practices and make things far simpler to configure.
- Infrastructure as code federated out to the developers themselves freeing up our OPS/Infrastructure team from doing the work to more of a consulting role