HashiCorp Terraform OverviewUNIXBusinessApplication

HashiCorp Terraform is the #6 ranked solution in top Configuration Management tools. PeerSpot users give HashiCorp Terraform an average rating of 8.6 out of 10. HashiCorp Terraform is most commonly compared to Microsoft Endpoint Configuration Manager: HashiCorp Terraform vs Microsoft Endpoint Configuration Manager. HashiCorp Terraform is popular among the large enterprise segment, accounting for 66% of users researching this solution on PeerSpot. The top industry researching this solution are professionals from a computer software company, accounting for 18% of all views.
HashiCorp Terraform Buyer's Guide

Download the HashiCorp Terraform Buyer's Guide including reviews and more. Updated: May 2023

What is HashiCorp Terraform?

HashiCorp Terraform is a powerful configuration management solution that aims to provide users with the ability to maximize the ease with which users can perform their configuration management operations. It makes it so that organizations can reliably configure and manage their infrastructure. Terraform is a tool that transforms every user into an administrator and project collaborator. Businesses that use it have at their command a solution that they can use for the entire lifecycle of their infrastructure.

HashiCorp Terraform Benefits

Some of the ways that organizations can benefit by choosing to deploy HashiCorp Terraform include:


  • Disaster recovery. Terraform provides users with the ability to prevent a catastrophic loss of infrastructure from taking place. It stores the blueprint for the infrastructure in a centralized state file. This central file contains all of the data, resources, and metadata that make up an organization’s infrastructure setup. If their infrastructure is damaged or destroyed this file can be used to reconstitute the infrastructure as it was before the damage was done. Users need never worry that they will lose their infrastructure.


  • Reduce overhead costs while offering maximum benefit. Terraform is designed so that users can deploy it relatively cheaply while still gaining the maximum level of benefit. It offers users a diverse collection of out-of-the-box modules that users can use and reuse without having to purchase anything else. The solution is also agentless which means that it can be deployed without requiring users to download anything else to make it function.


  • Flexibility. Terraform is highly flexible. It is a totally platform-agnostic solution. It can be used to manage architecture being run on both physical devices and virtual machines. Users who use cloud environments can utilize it just as effectively as those who are working with physical on-premises servers. This enables users to use whatever system they wish without being beholden to any kind of restrictions.


  • Remote operation. Terraform can be remotely operated and managed from anywhere in the world. This empowers organizations to operate internationally without worrying that they will somehow be less effective than if they were working from their headquarters.


  • Self-service infrastructure. Terraform can be operated by many members of an organization. Users can take on some of the responsibilities that would be handled by administrators. They can leverage the ServiceNow Integration to create workspaces, perform Terraform runs, and even order service items. Additionally, users can deploy Configuration Designer to leverage predefined modules in order to handle infrastructure requests themselves.



HashiCorp Terraform Features


  • Integration suite. Terraform enables users to integrate their systems with it regardless of what kind of infrastructure system they are using. It leverages a wide variety of APIs to empower users to take their workflows and integrate them with Terraform’s powerful management capabilities.


  • Automation tool. Organizations can leverage Terraform to automate a vast variety of features. One example of a feature that administrators can automate is its system update application. Terraform makes it so that the solution itself is charged with applying updates and the like. This ensures that all operations are performed uniformly and in a manner that is consistent with the infrastructure’s configuration. It also guarantees that the possibility of human error need not be considered.


  • Collaboration feature. Terraform Cloud makes it simple for users to share their workflows with colleagues. This enables them to efficiently collaborate on whatever project they are working on. Teams that are authorized to work on a particular project will be able to securely cooperate and accomplish their tasks.


  • Notifications. Terraform offers users the ability to set it so that they receive notifications. The nature of these notifications can vary based on a user’s needs. They can range from notifications about the occurrence of particular events to progress reports concerning operations that the user is running.


  • Security suite. Terraform comes with a suite of security capabilities that aim to keep users and their infrastructures from being harmed by digital threats. One such capability is a feature that auto-generates short-lived security credentials. This prevents access codes from being leaked or stolen by hackers. The credentials last for a specified period of time and are then deleted from the system. When new credentials are needed they will once again generate a set for the user in question.


Reviews from Real Users

HashiCorp Terraform is a highly effective solution that stands out when compared to many of its competitors. Two significant advantages it offers are its ability to help users create deployment pipelines that make the deployment process simple and its ability to recover infrastructure fully should something delete or damage it.

Patryk G., the chief technology officer at Translucent Computing Inc, writes, “Furthermore, Terraform enables the creation of a deployment pipeline using tools, such as Atlantis, which automates the process of scanning and deploying the code. This streamlines the deployment process and adds features, such as auditing, risk management, and security scanning to the deployment process. Terraform provides a more organized and secure way of managing infrastructure, compared to the traditional ad-hoc method.”


Rakib M., the chief technology and strategy officer at the White House, says, “One of the other major features of terraform is its ability to act as a Disaster Recovery tool. Since terraform is an Infrastructure-As-A-Service tool, it can be used as part of the rest of the DR toolset to restore affected infrastructure to its original state without any variation.”

HashiCorp Terraform was previously known as Terraform.

HashiCorp Terraform Pricing Advice

What users are saying about HashiCorp Terraform pricing:
  • "HashiCorp Terraform is a cost-effective solution."
  • "We use the solution's free version."
  • "I rate the price of HashiCorp Terraform a seven out of ten."
  • HashiCorp Terraform Reviews

    Filter by:
    Filter Reviews
    Industry
    Loading...
    Filter Unavailable
    Company Size
    Loading...
    Filter Unavailable
    Job Level
    Loading...
    Filter Unavailable
    Rating
    Loading...
    Filter Unavailable
    Considered
    Loading...
    Filter Unavailable
    Order by:
    Loading...
    • Date
    • Highest Rating
    • Lowest Rating
    • Review Length
    Search:
    Showingreviews based on the current filters. Reset all filters
    Senior Build And Release Engineer at a tech services company with 1,001-5,000 employees
    Real User
    Top 5Leaderboard
    Simple to install, and understands the order in which specific infrastructure must be implemented
    Pros and Cons
    • "The concept of infrastructure as code is quite intriguing. We have an infrastructure in our code and a state file where we can verify whether something is changed when it was changed, and who changed it. When we use Terraform, these kinds of things fascinate us."
    • "I would want to see more programmatic capabilities implemented, such as if, else, and simple to manage things in terms of how I can use some programming functions to assist us to achieve more. I would like to have programming language-relevant features, to have programming language be the primary way."

    What is our primary use case?

    We use HashiCorp Terraform to set up AWS infrastructure, and sometimes Cloudflare.

    It is not exactly a tool for configuration, it is for setting up the development of the infrastructure.

    What is most valuable?

    The concept of infrastructure as code is quite intriguing.

    We have an infrastructure in our code and a state file where we can verify whether something is changed when it was changed, and who changed it. When we use Terraform, these kinds of things fascinate us.

    What needs improvement?

    I often wonder why they don't create a UI. That is something I always consider. I realize CLI is useful, but I prefer to do things in this manner. Why are we opting for CLI? I want to make things easy. I understand that most don't agree with me, but that is what I would prefer.

    I don't think that they will agree on this. I am looking for a drag-and-drop or anything that can just generate modules behind the scenes and allow people to quickly accomplish things. 

    I am aware that it does not serve the purpose of Terraform, and that too, is an issue. 

    We have a purpose for infrastructure as code, and when the code is gone, you are working on UI. Terraform is not a programming language, most things are straightforward; we cannot do. Terraform lacks these features.

    I would say the programming language, perhaps using more of a programming language rather than this declarative language, is something I'd want to explore in the future.

    I would want to see more programmatic capabilities implemented, such as if, else, and simple to manage things in terms of how I can use some programming functions to assist us to achieve more.

    I would like to have programming language-relevant features, to have programming language be the primary way.

    For how long have I used the solution?

    I have been using HashiCorp Terraform for three years.

    Buyer's Guide
    HashiCorp Terraform
    May 2023
    Learn what your peers think about HashiCorp Terraform. Get advice and tips from experienced pros sharing their opinions. Updated: May 2023.
    706,775 professionals have used our research since 2012.

    What do I think about the stability of the solution?

    I don't think HashiCorp Terraform is particularly stable. I would rate it a three and a half out of five. However, we are always working on it and making improvements. They had a lot of problems in the past, but today most things are done correctly.

    While there are new versions coming in, there are always issues that arise.

    It is not about stability, but about version upgrades. They have newer versions and occasionally backward compatibility. It happened a long time ago but is not an issue anymore. I had a bad experience at the beginning, which is why I remember it.

    Someone who is just starting, in my opinion, will encounter difficulties. That is why I believe the language should be changed to a programmed language that everyone can comprehend.

    The previous version had several difficulties with the state file, including some backward compatibility and parameter changes, but they are now more stable.

    What do I think about the scalability of the solution?

    I have not encountered any issues with HashiCorp Terraform's scalability.

    We are using Terraform to build up infrastructure in order to document our infrastructure more declaratively. That is what Terraform excels at. I never had any problems with scalability, either in terms of improvement or anything else. 

    There are some glitches with Terraform servers. When we are initializing, we occasionally encounter an issue; in three years, this has happened to me twice.

    We have 20 people in our organization who use this solution, if we add developers we have approximately 60 people.

    Which solution did I use previously and why did I switch?

    From inside the cloud services, I am working on EKS Kubernetes, ECS Elastic Containerized Services, and Elasticsearch, which is now known as OpenSearch. I am working on EKS, Kubernetes, ECS, Elastic Containerized Services, as well as Elastic Search, which is now known as Open Search, and Redis ElastiCache, which is a component of MSK Kafka.

    These are the tools I am using. Jenkins is used for the CI process, as well as GitHub Action is used for the CI process. 

    As previously mentioned for alerts, we use Opsgenie and Grafana for the dashboards and premises. 

    Many third-party services, such as NGINX, are used in Kubernetes. We use Cube Metrics for these kinds of activities, such as metrics scraping.

    I have worked with Ansible as well, however, if you asked me to compare the two, I would say Terraform is superior to Ansible. I am not going to get into specifics. 

    Terraform, is self-explanatory. It knows how to run, if we want to build some infrastructure, it understands where to start, how to start, what the dependencies are, and so on. 

    We must occasionally inform Terraform of some dependencies, which is fine. Terraform, on the other hand, already understands the sequence in which it must execute certain infrastructure to build up. Those are the advantages over Ansible.

    The disadvantage of Terraform is that, once again, we must use functions to build up variables or something similar, but Terraform's dry notion is not very good.

    When I say dry, I mean that you should not repeat the bad code. Other references are being used to handle this. That is something I would want to suggest.

    How was the initial setup?

    The initial setup is simple. It is not a difficult process to set up.

    I would rate the initial setup a four out of five. it is easy.

    When a new version is released, it is backward compatible. And I would say that is good in terms of Terraform maintainability. Normally, we don't have to make many changes, and backward compatibility is beneficial.

    In terms of maintenance, it does not require a lot of attention.

    What other advice do I have?

    It's good, I would rate HashiCorp Terraform an eight out of ten.

    Disclosure: I am a real user, and this review is based on my own experience and opinions.
    Flag as inappropriate
    PeerSpot user
    Partner & principal technologist at SwanSpeed Consulting
    Real User
    Creating a VPC and VPN connectivity to the VPC can be automated
    Pros and Cons
    • "One of the most valuable features is that it offers the ability to create a VPC, Virtual Private Cloud and VPN connectivity to the VPC can be automated without having to do it manually."
    • "One of the most valuable features is that it offers the ability to create a VPC, Virtual Private Cloud and VPN connectivity to the VPC can be automated without having to do it manually."
    • "I still struggle a bit when configuring VPNs when we have multiple rules. If we have five or six virtual private clouds and we have to give rights between those multiple VPCs, we can have big problems. I think it was a learning curve and then we improved it."

    How has it helped my organization?

    The office was working out of their office and they had around nine clients. The workspace would be in AWS and doing a VPC manually would have been a really hard job. The time estimated for doing nine virtual private clouds would have taken more than a month or two. Using Terraform, they were able to finish it in two weeks. The speed at which we could create the infrastructure was much faster than physically doing it. Also, having an audit and log for all the infrastructure was managed a lot easier using Terraform rather than doing it manually.

    What is most valuable?

    One of the most valuable features is that it offers the ability to create a VPC, Virtual Private Cloud and VPN connectivity to the VPC can be automated without having to do it manually. 

    What needs improvement?

    I still struggle a bit when configuring VPNs when we have multiple rules. If we have five or six virtual private clouds and we have to give rights between those multiple VPCs, we can have big problems.  I think it was a learning curve and then we improved it. 

    I have not come across anything that really stopped us from not doing anything for our requirement as of now.

    What do I think about the stability of the solution?

    I liked it because since it's scriptable, the way you create the infrastructure is the same way you can delete the infrastructure also. If you created 10 to 20 different services and objects in AWS using a Terraform script, it's much easier for a person to get the whole infrastructure down. You can do a backup and then you don't really need AWS services because either the client does not exist anymore, or there is some gap before the client comes back, you don't have to manually go and delete all the resources. One script would actually remove everything from AWS. 

    Cost-wise, going through the script and then removing everything that you have created through the script is much better than manually doing it. That was helpful for the client as well.

    What do I think about the scalability of the solution?

    We use it to manage infrastructure. For day-to-day work, the main developers were not using Terraform, so it was only three of us who used it. We were working on Terraform, created those scripts, and then gave it to the client for whom I was doing the work. Since it's now scriptable, they are able to manage and do all these small changes. They don't come back to me. Since they don't come back to me, it seems like it is working fine.

    Terraform keeps updating its scriptable platform, the engine through which they communicate. So if there is any change in AWS, they keep updating it. Even from the deployment side, they have to be aware of the features, which Terraform still supports and the features, which Terraform doesn't support and then work around accordingly.

    How was the initial setup?

    The initial setup, like doing the AWS credentials, putting it in place, and getting the API keys are the parts that took time. Otherwise, it is a lot faster and the learning curve is also much easier since it's a YAML-based scripting language. Even a non-programmer in a normal office can understand what is happening in the flow.

    The deployment took around 15 days. In around 20 days we were ready with the Terraform scripts and then made small changes. Every time they need a new infrastructure that requires a small change, it would take a day or two. We created the initial Terraform script and gave it to a client so that it could later be managed by the client itself to create and run. Fifteen days was good enough for us to create and test the Terraform infrastructure and then give it to the client.

    We started the deployment by seeing how we would divide the infrastructure. One is the list of infrastructure, which we would need irrespective of the clients for the VPC, VPN gateway, and active directory services. Those are all mandatory items that we would need for all the VPCs. And there are some items that are client-specific. We divided it into multiple parts. One is generic, which you will need for all the clients that are a base level. Then you keep playing the client's specific scripts on top of the base script.

    What's my experience with pricing, setup cost, and licensing?

    It's open-source.

    What other advice do I have?

    Rather than doing a monolithic Terraform for the whole infrastructure, it would be good for the script to be reusable. Use the base level script that every infrastructure would need. Generating a local IP network and then creating two instances or creating some databases and other basic scripts that all the infrastructure would need should be a base level script. Then add on your base level script with the add-on scripts on top of the base script to create infrastructure that is specific to clients. You can reuse the script, the same base group for many other purposes as well.

    Before using Terraform, for auditing, creating machines, etc, we would either rely on AWS infrastructure itself or documents that had infrastructure-related data. Using Terraform, a lot of this data was captured automatically since it's a YAML script. It could be easily exported as a document or Excel file as well. Documentation and infrastructure was much easier to maintain than doing it otherwise.

    I would rate Terraform an eight out of ten. 

    Which deployment model are you using for this solution?

    Hybrid Cloud

    If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

    Google
    Disclosure: I am a real user, and this review is based on my own experience and opinions.
    Flag as inappropriate
    PeerSpot user
    Buyer's Guide
    HashiCorp Terraform
    May 2023
    Learn what your peers think about HashiCorp Terraform. Get advice and tips from experienced pros sharing their opinions. Updated: May 2023.
    706,775 professionals have used our research since 2012.
    Patryk Golabek - PeerSpot reviewer
    CTO at Translucent Computing Inc
    Real User
    Top 5
    Suited for managing complex environments, useful shared collaboration, but has testing issues
    Pros and Cons
    • "The valuable features of HashiCorp Terraform are the infrastructure can be written, shared, and collaborated on using code, which speeds up deployment. Additionally, bugs and issues can be fixed in the code and redeployed, making it less risky. It is a more efficient method compared to the traditional approach of writing scripts to set up infrastructure."
    • "HashiCorp Terraform is an open-source tool that relies on external developers to create plugins to expand its capabilities. However, this approach can be problematic as not all plugins are created by professionals and some may have security vulnerabilities. In the case of GKE, Google has created a solid plugin, but for other services, one must search for plugins on the HashiCorp Terraform registry, which can be hit or miss, as many plugins are created by students or hobbyists, who may not continue to maintain or update them. This model of open-sourced plugins may not be the most reliable or secure way of expanding the tool's capabilities."

    What is our primary use case?

    HashiCorp Terraform is a system solution that allows for infrastructure to be managed as code. allows for the efficient creation and management of infrastructure by packaging everything together in one package. This includes the networking, security, and encryption for Google Kubernetes Engine (GKE) deployment.

    How has it helped my organization?

    By using HashiCorp Terraform, the infrastructure is all in one place and can be easily tested and checked for security vulnerabilities before deployment.

    What is most valuable?

    The valuable features of HashiCorp Terraform are the infrastructure can be written, shared, and collaborated on using code, which speeds up deployment. Additionally, bugs and issues can be fixed in the code and redeployed, making it less risky. It is a more efficient method compared to the traditional approach of writing scripts to set up infrastructure.

    The infrastructure is transparent, as it is stored in a source control system, such as Bitbucket, making it easy for all team members to access and review. Furthermore, Terraform enables the creation of a deployment pipeline using tools, such as Atlantis, which automates the process of scanning and deploying the code. This streamlines the deployment process and adds features, such as auditing, risk management, and security scanning to the deployment process. Terraform provides a more organized and secure way of managing infrastructure, compared to the traditional ad-hoc method.

    What needs improvement?

    HashiCorp Terraform is an open-source tool that relies on external developers to create plugins to expand its capabilities. However, this approach can be problematic as not all plugins are created by professionals and some may have security vulnerabilities. In the case of GKE, Google has created a solid plugin, but for other services, one must search for plugins on the HashiCorp Terraform registry, which can be hit or miss, as many plugins are created by students or hobbyists, who may not continue to maintain or update them. This model of open-sourced plugins may not be the most reliable or secure way of expanding the tool's capabilities. 

    It is possible that when using a plugin with HashiCorp Terraform, there may be security issues or the plugin may become outdated in the future. HashiCorp Terraform only takes responsibility for the infrastructure and code of the program itself, not the plugin. This is a point of concern as it is the responsibility of the user to police and manage the plugins, which can be a significant overhead. Additionally, the solution requires plugins for modules, so without them, Terraform cannot communicate with certain resources.

    To improve this, it would be beneficial if HashiCorp Terraform had a system in place where they certify and test the plugins. This would take the burden off of users and reduce the cost of using the solution. The current system relies heavily on open-source plugins which may not be fully developed, lack features, or may not be secure. It is not uncommon for users to have to fork or manage these plugins themselves, which can be a significant undertaking.

    The module system in the solution is not the best, as it forces users to rely on third-party developers who may not be qualified from a security or engineering standpoint. This can create a problem for users as they may not have access to all the features they need, and may have to fork or manage the plugins themselves. HashiCorp Terraform, as the creators of this system, should take more responsibility for the management and security of these third-party plugins.

    The use of open-source code, such as that used in this solution, can present issues as it may not always be fully supported or maintained by its creators. This publicly traded, multi-billion dollar company, may not want to take full responsibility for the plugins and modules that are created by third parties. This can be problematic for users, as they may have to police the plugins themselves to ensure they are secure and functional. Furthermore, while some companies such as Google may have the resources to create their own Terraform plugin and take responsibility for it, many other companies and developers do not have the same resources and may not take responsibility for maintaining their own plugins. This can lead to a broken system where users may have to pay extra to have broken plugins fixed. Overall, this highlights the need for a better system of support and maintenance for open-source code and plugins.

    For how long have I used the solution?

    I have been using HashiCorp Terraform for approximately four years.

    What do I think about the scalability of the solution?

    The solution is scalable. It is well suited to managing complex cloud environments, such as Google Kubernetes Engine, that require various services and configurations.

    What's my experience with pricing, setup cost, and licensing?

    HashiCorp Terraform is a cost-effective solution.

    What other advice do I have?

    HashiCorp Terraform has issues with testing and the modules. Overall, the concept is great. What they did works well. However, the extension to it is not the greatest.

    I rate HashiCorp Terraform a seven out of ten.

    Disclosure: I am a real user, and this review is based on my own experience and opinions.
    Flag as inappropriate
    PeerSpot user
    Rakib Mahmood - PeerSpot reviewer
    Chief Technology and Strategy Officer at The White House
    Real User
    Top 10
    Provides automation which is a huge cost saver
    Pros and Cons
    • "Provides automation which has increased our efficiency."
    • "Terraform lacks in running script."

    What is our primary use case?

    A primary use case of Terraform is for deploying a VM on a cloud using Terraform script. If I then want to deploy a third-party toolset, a solution such as Aviatrix can create an overlay on top of each of the cloud providers and you can connect the clouds together. I'm a solutions architect and we are customers of HashiCorp. 

    How has it helped my organization?

    The solution has made a huge difference to us because the automation it provides has given us improved cost efficiency, security and saved many man-hours. It's created once and then that's pretty much it. When you next want to deploy something, you run it and it deploys. 

    What is most valuable?

    Terraform removes the manual process; you run it for a specific purpose, destroy it when you're done, and it removes all the associated components. The other good feature is that Terraform is idempotent; if something is already out there, it's not going to try to duplicate another installation of that environment.

    One of the other major features of terraform is in its ability to act as a Disaster Recovery tool. Since terraform is an Infrastructure-As-A-Service tool, it can be used as part of the rest of the DR toolset to restore affected infrastructure to its original state without any variation. 

    The Terraform manifests can be stored in a version control repository separate from the application code base and can be a single source of truth for an organization's infrastructure. The automation and the efficiency that Terraform brings to the SDLC lifecycle adds to the overall integrity of the infrastructure and provides a value added to the DevSecOps workflow.   

    What needs improvement?

    I've noticed that although Terraform is very good at deploying, it lacks in running script. For example, if you wanted to run multiple deployments such as a VM, and then install different softwares and create a full-blown infrastructure within that virtual machine, Terraform would probably lack certain features. I don't think it's very robust in running scripts or going from one sequence to another. You're likely to end up running a huge Terraform code base, where you'd probably get lost in terms of knowing where things are coming from and where they're going. 

    For how long have I used the solution?

    I've been using this solution for two years. 

    What do I think about the stability of the solution?

    The solution is stable without too many bugs. If we're deploying on top of a current deployment, there can be some issues and that could be improved. If you need a fully idempotent solution, you deploy your infrastructure without touching any existing infrastructure. Unfortunately, Terraform fails when it finds an existing infrastructure and things become complicated. In terms of stability, this is probably one of the biggest deficiencies of Terraform. 

    How are customer service and support?

    HashiCorp provides very good documentation so we haven't needed to contact technical support. They also have GitHub repository against each of those tutorials, so we can actually clone and tweak those according to our needs. There's also a large open-source community out there and a lot of blogs that complement the documentation. 

    How was the initial setup?

    Deployment is just about downloading the plug-in. To run it requires each of the cloud environments on the CLI tool downloaded so that they both work together with all the credentials in place so that it can connect to each of the clouds. We are a small organization and still experimenting with Terraform so we only have one dedicated person helping out with the solution. That said, all of the team members are more or less skilled with Terraform.

    What was our ROI?

    We're definitely seeing cost savings from a man-hour point of view but I can't quantify it. 

    What's my experience with pricing, setup cost, and licensing?

    We are using the free version of Terraform. Terraform Cloud has some kind of pricing and enterprise-level model which we haven't moved to yet. I think  Terraform has a pretty reasonable pricing structure. It allows the open-source community to use it as they please, so I'm pretty happy about it.

    Which other solutions did I evaluate?

    AWS has a code solution called CloudFormation which I think is a little slower than Terraform although I think CloudFormation is probably a bit more secure and foolproof.

    What other advice do I have?

    This is a solid product and one of the leaders in this space. Terraform is used across the board as an Infrastructure-as-Code solution. 

    There could be some improvements so I rate this solution eight out of 10. 

    Which deployment model are you using for this solution?

    Public Cloud
    Disclosure: I am a real user, and this review is based on my own experience and opinions.
    PeerSpot user
    Marek Kubovic - PeerSpot reviewer
    Cloud and DevOps Architect at a tech services company with 10,001+ employees
    Real User
    Top 5Leaderboard
    Easy to use, technically strong, and great for multi-provider or multi-cloud environments
    Pros and Cons
    • "It is easy to recreate an exact duplicate or output of an environment."
    • "Automation is needed to import everything at once from a manual environment or by a specific resource group."

    What is our primary use case?

    Our company uses the solution to deploy resources and infrastructure in Azure Cloud via the Azure DevOps pipelines. 

    We have two developers who use the solution. 

    What is most valuable?

    It is easy to recreate an exact duplicate or output of an environment. 

    The solution is much faster than manual deployments. 

    It is much easier to create code than with ARM templates. 

    The solution is quite easy to learn and use. 

    What needs improvement?

    It should be easy to automatically import everything at once from a manual environment or by a specific resource group. Currently, imports are only per resource so some automation is needed. 

    The setup could be a bit easier. 

    For how long have I used the solution?

    I have been using the solution for four years. 

    What do I think about the stability of the solution?

    From time to time there are stability issues with other providers and original providers in the solution. Stability is rated a seven out of ten. 

    What do I think about the scalability of the solution?

    The solution is scalable so scalability is rated a seven out of ten. 

    How are customer service and support?

    I have not contacted technical support. 

    How was the initial setup?

    The setup for one laptop is quite easy technically.

    If you are sharing the environment among staff, then the setup is a bit more complicated. You need knowledge to setup under this specific condition. Once you study it, you will be able to implement correctly. 

    The setup is rated a five out of ten. 

    What about the implementation team?

    We implemented the solution in-house. If you know how to do it, implementation is not too complicated and takes a few hours. 

    What's my experience with pricing, setup cost, and licensing?

    We use the solution's free version. 

    Which other solutions did I evaluate?

    The solution is good for automation and better than regular ARM templates from Microsoft. It might not be as good as Bicep, but is better than most other providers. 

    The solution is a strong technically and great for multi-provider or multi-cloud environments.  It is rated a top tool in the market. 

    What other advice do I have?

    The solution is great technically for the cloud and automations. It can be used with Azure, AWS, Google, and other clouds if you know the syntax.  There are many resources provided and the free version works great for multi-cloud automations. 

    I rate the solution an eight out of ten. 

    Which deployment model are you using for this solution?

    Public Cloud

    If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

    Microsoft Azure
    Disclosure: I am a real user, and this review is based on my own experience and opinions.
    Flag as inappropriate
    PeerSpot user
    Senior DevOps Engineer at a tech vendor with 10,001+ employees
    Real User
    Top 5Leaderboard
    Has a very simple API and can be used across multiple platforms
    Pros and Cons
    • "Can be used across multiple cloud providers and multiple platforms."
    • "Lacks flexibility in common programming languages."

    What is our primary use case?

    I use this solution for infrastructure for my projects that are deployed in Google Cloud. I work in EPA systems. 

    How has it helped my organization?

    The solution allows you to have infrastructure-like code which is basically what Terraform has been about. Terraform makes it easier to figure out the kind of problem that has occurred, why, and who was responsible.

    What is most valuable?

    Although using an older version, I've found the biggest advantage of Terraform is that it can be used across multiple cloud providers and multiple platforms and it has a simple API. 

    What needs improvement?

    The biggest disadvantage of Terraform is its lack of flexibility in common programming languages. It also lacks flexibility in creating some functions like complex expressions to declare random variables, and features that require any programming language. Those issues are because HashiCorp is trying to keep the API as simple as possible. I would like to see some idea of functional programming in Terraform. It would be great if you could process your data and push it back to the model. It would mean a huge improvement in flexibility. 

    For how long have I used the solution?

    I've been using this solution for three years. 

    What do I think about the stability of the solution?

    The solution is stable and we haven't had any problems in that regard. 

    What do I think about the scalability of the solution?

    The solution is scalable and we are constantly working on increasing of size of our infrastructure.

    How was the initial setup?

    The initial setup is a little complex but not very difficult. Implementation time depends on the size of the deployment. Our deployment was carried out in-house. We need at least one person per 50 models of Terraform for implementation. 

    What was our ROI?

    We've had a return on our investment because it's decreased the overall ops overhead via the front team.

    What's my experience with pricing, setup cost, and licensing?

    I am not using a payable Terraform although I'm quite familiar with the price and don't consider it to be expensive. Licensing costs are mid-range. 

    What other advice do I have?

    I would suggest reading documentation and experimenting with the solution. 

    I rate the solution 10 out of 10. 

    Which deployment model are you using for this solution?

    Public Cloud

    If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

    Google
    Disclosure: I am a real user, and this review is based on my own experience and opinions.
    Flag as inappropriate
    PeerSpot user
    Mohammed Fareed - PeerSpot reviewer
    Azure DevOps Lead at DXC Technology
    Real User
    Top 5Leaderboard
    It speeds up the process of replicating infrastructure between environments, but it could support more user-friendly languages
    Pros and Cons
    • "We frequently need to create and replicate infrastructure from various environments like dev and QA. The QA resources need to be identical to those in the dev environment. With a Terraform script, we can replicate the same 50 in the dev environment to the testing environment. This is tedious to do manually, and Terraform speeds up the process."
    • "Terraform should also support YAML language, which is more user-friendly than HCL. They should also add a GUI, so you don't need to memorize all the commands. A GUI would enable us to do everything with a click of a button."

    What is our primary use case?

    We use Terraform to create infrastructure. We get the name of the resource provider, and the Terraform script is returned in HashiCorp Configuration Language (HCL). 

    We can find readily available code from the HashiCorp community to create a virtual machine or Kubernetes service cluster. We take that code, provide the resource provider name, and run the script using Terraform commands to create the infrastructure

    We currently use Terraform in our Azure pipelines in the cloud. Our team has 10 developers, and we will increase our usage as the team grows. 

    How has it helped my organization?

    We frequently need to create and replicate infrastructure from various environments like dev and QA. The QA resources need to be identical to those in the dev environment. With a Terraform script, we can replicate the same 50 in the dev environment to the testing environment. This is tedious to do manually, and Terraform speeds up the process. 

    What is most valuable?

    Infrastructure replication is Terraform's most valuable feature. 

    What needs improvement?

    Terraform should also support YAML language, which is more user-friendly than HCL. They should also add a GUI, so you don't need to memorize all the commands. A GUI would enable us to do everything with a click of a button. 

    For how long have I used the solution?

    I have been using Terraform for the last three years.

    What do I think about the stability of the solution?

    I rate Terraform seven out of 10 for stability.

    What do I think about the scalability of the solution?

    I rate Terraform eight out of 10 for scalability.`

    How are customer service and support?

    I rate HashiCorp seven out of 10 for technical support.

    How would you rate customer service and support?

    Neutral

    How was the initial setup?

    I rate Terraform eight out of 10 for ease of setup. 

    What's my experience with pricing, setup cost, and licensing?

    Terraform is an open-source solution.

    What other advice do I have?

    I rate HashiCorp Terraform seven out of 10. It's interesting to see how the infrastructure is created rather than creating it manually.

    Which deployment model are you using for this solution?

    Public Cloud

    If public cloud, private cloud, or hybrid cloud, which cloud provider do you use?

    Microsoft Azure
    Disclosure: I am a real user, and this review is based on my own experience and opinions.
    Flag as inappropriate
    PeerSpot user
    Asad Rizvi - PeerSpot reviewer
    Senior Software Engineer at a retailer with 10,001+ employees
    Real User
    Top 5Leaderboard
    Useful automation, highly stable and scalable
    Pros and Cons
    • "The feature "Terraform Plan" is the most valuable in HashiCorp Terraform as it allows us to see the differences between the current infrastructure and the one we are about to deploy, keeping things safe. Additionally, we appreciate the use of the modules as it helps in making the application scalable."
    • "The price of the solution could improve."

    What is our primary use case?

    HashiCorp Terraform is a tool used for provisioning cloud infrastructure. It is used in this specific use case to deploy and provision all services, including Kafka, MongoDB, and Postgres clusters, using infrastructure as code.

    How has it helped my organization?

    HashiCorp Terraform has greatly assisted in deploying a new service by automating the configuration of pub/subs and secrets on GCS and Drone. We are able to make changes and keep track of configurations by writing code and scripting through Terraform, rather than manually doing it on the cloud. This has led to a change in our perspective on deployment and DevOps.

    What is most valuable?

    The feature "Terraform Plan" is the most valuable in HashiCorp Terraform as it allows us to see the differences between the current infrastructure and the one we are about to deploy, keeping things safe. Additionally, we appreciate the use of the modules as it helps in making the application scalable.

    What needs improvement?

    The price of the solution could improve.

    For how long have I used the solution?

    I have been using HashiCorp Terraform for approximately six months.

    What do I think about the stability of the solution?

    I rate the stability of HashiCorp Terraform a ten out of ten.

    What do I think about the scalability of the solution?

    We have approximately 1,500 users using this solution in my company. We plan to increase our usage.

    I rate the scalability of HashiCorp Terraform a ten out of ten.

    How are customer service and support?

    I have not contacted support.

    Which solution did I use previously and why did I switch?

    I have not used similar solutions to HashiCorp Terraform before.

    What was our ROI?

    I have seen a return on investment using the solution.

    What's my experience with pricing, setup cost, and licensing?

    I rate the price of HashiCorp Terraform a seven out of ten.

    What other advice do I have?

    My advice to others is to treat Terraform as code, not just another configuration management tool. It's similar to writing backend code, so approach it with the same mindset and level of care.

    I rate HashiCorp Terraform a nine out of ten.

    Disclosure: I am a real user, and this review is based on my own experience and opinions.
    Flag as inappropriate
    PeerSpot user
    Buyer's Guide
    Download our free HashiCorp Terraform Report and get advice and tips from experienced pros sharing their opinions.
    Updated: May 2023
    Product Categories
    Configuration Management
    Buyer's Guide
    Download our free HashiCorp Terraform Report and get advice and tips from experienced pros sharing their opinions.