Eryk Lawyd - PeerSpot reviewer
Tech Lead DevSecOps at Letsbank
Real User
Top 5
An very scalable and detailed solution that needs to improve its customer support
Pros and Cons
  • "It is the customization of Terraform's modules that I find most valuable."
  • "Terraform could create more examples in the documentation."

What is our primary use case?

Terraform is our main infrastructure as code at the bank. Our entire deployment site and the AWS solution are based on Terraform. We use EBridge and the Dochub solution on the Bitbucket pipeline. Terraform runs on a container in the Bitbucket pipeline, but to create my entire cloud solution, I use EBridge.

How has it helped my organization?

Terraform centralizes all our applications and it’s the best way to do it. When you work with the container and the EC2 clusters, you need to create each service manually. Terraform allows you to create a lot of them at once and check if they are being created correctly. It is a huge timesaver.

What is most valuable?

I find almost all the features valuable. It is the customization of Terraform's modules that I find most valuable.

What needs improvement?

Terraform could create more examples in the documentation. It is an enterprise/free solution, and you have to do a lot to customize the tools. A huge example I faced before that drove me nuts was when I created an entire data lake using Terraform. A DMS solution using Oracle didn't read some options in AWS on the Terraform module. I opened a ticket to support, asking, "Could you improve this module, only adding these features as variables?" After four months, my ticket was closed by a bot because support was not looking for it. I don't know if there were many issues or tickets, but support should listen to the Terraform community better and make adjustments to their tools.

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

For how long have I used the solution?

I've been using HashiCorp Terraform since 2017.

What do I think about the stability of the solution?

Terraform is stable. I don't use Terraform Cloud, though they offered it to me previously. Using other clouds, we don't face many issues or instability in our ecosystem. The only issue or instability I have faced was because the AWS cloud was unstable, so Terraform got timed out and could not finish the task, trying again and again and being stalled for two hours. That is the only issue I remember because we use the EBridge environment. We try to compensate for Terraform's instability and make it viable using other platforms. Using Terraform's cloud solution brings more stability, but for what we are using right now, Terraform only breaks if we make a mistake in the code.

What do I think about the scalability of the solution?

Terraform is hugely scalable. If I have everything in place, you can create an entire environment, like a data lake, in one simple deployment. But it is complex to scale. You will face some limitations if you try to work with multiple servers or accounts. Terraform works similarly to a FIFO context, but you must wait a long time to create the entire deployment before going to the next account. If deployment on one account fails, you cannot proceed to the next one because Terraform's main focus is on the security of the infrastructure. My entire squad of four uses Terraform because we centralized the DevOps for Terraform. We are planning to expand this tool to our entire development team. We will have at least 15 to 30 developers using the tool in the future.

How are customer service and support?

Their customer support is the worst. I opened a ticket, and I never got an answer, and the community does not listen to the most common issues. But I understand why I was left out because I asked a hugely specific question about a little bug in the code. My experience was not the best, but I no longer need to ask them because I make my own workarounds. Besides, we don't face issues that require us to talk to support.

The customer should receive an answer regardless of the question. Even answers like, "This isn't a feature," "We can't do this right now," or "This isn't the roadmap."

How would you rate customer service and support?

Neutral

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

I compare Terraform with Ansible. I work with multiple servers in Ansible in a FIFO method. You have a list of servers you apply one after the other. But you can work with those servers in parallel, even if one server fails to deploy. In Terraform, you must finish deployment on each account before going to the next one.

When I joined my current company, they were already using Terraform, and we had to create the environment on AWS manually. We are not using any IaC tools.

How was the initial setup?

The initial setup was complex. You need to understand what you want to do exactly. You are a child in a playground with many toys to play with, and you can create anything you want. But if you pick up the wrong "toy," you can hurt yourself and the environment. Using the wrong module can bring a huge cost to your infrastructure, and it won't perform as well as you initially expected. Initial setup is more difficult to start if you have some infrastructure completed.

If you are setting up from the start with baby steps, it is a little hard to understand the documentation, though it makes the setup look much simpler. You need some knowledge to understand how Terraform can apply to your environment. After that, it's easier. And just like riding a bike, you never forget.

The time taken to deploy the solution depends on what you are creating. For example, if I create a DMS instance for my data lake, it takes 15 minutes to deploy. If I'm creating a different data lake on the Athena database, it takes exactly 23 seconds to create. A DMS takes much more time, but not more than half an hour.

While deploying Terraform, we checked the Terraform statement on AWS. Each account has its own statement. We checked the difference between statements, made a Terraform image, made a plan, and checked the plan to see if it was correct and applied.

What about the implementation team?

I did the deployment myself, looking at the documentation.

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

We use the free platform using Dochub. Terraform is a little expensive. In a basic scenario, the price is too high to use such a complex tool in the long term. As a small company starting to use Terraform, the price is too high, so I recommend the free solution. If you are a huge company with a huge environment and infrastructure, the price will seem cheaper because you can control your entire infrastructure using Terraform. The solution then pays for itself. Choosing the paid version depends on the size of the company and your team's expertise.

Terraform licenses are per account.

What other advice do I have?

We currently use a statement for replication, trying to embed Terraform into our applications, but that's a new feature. We are applying some other features, for example, to check for vulnerabilities on your first code or to scan if you have hard-coded passwords, but we have not found anyone to help with these use cases. One of my co-workers is certified on Terraform, and they bring similar solutions also being used on Terraform for scanning. For myself, I want them to make that code work on as many accounts as possible. The same code must work on our deployment, homologation/staging, and production accounts. These are the three environments the code needs to work in. We tried making this a few months ago.

When deploying the solution, I did it by myself, looking at their documentation. Their documentation is good and bad. Their documentation is good because it gives a huge amount of information for several different possibilities, but it's bad because the documentation does not have a lot of real-life examples. Terraform prefers documentation as much as hard-coded information. For example, you might be using a certain string to do something, but in reality, you can do that in many other ways, and the documentation won't show all of those. You need to do trial and error or take a course with the Hashicorp organization to understand the different ways you can do something or use the platform.

I rate Terraform a seven out of ten because of its complexity.

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?

Amazon Web Services (AWS)
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
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
Buyer's Guide
HashiCorp Terraform
March 2024
Learn what your peers think about HashiCorp Terraform. Get advice and tips from experienced pros sharing their opinions. Updated: March 2024.
768,415 professionals have used our research since 2012.
Bruno Baldo - PeerSpot reviewer
Head of Growth at a security firm with 51-200 employees
Vendor
An affordable and scalable solution that provides a self-service infrastructure
Pros and Cons
  • "The solution helps us save a lot of costs."
  • "The product must improve DevOps features."

What is our primary use case?

I am using the solution on AWS to scale our operations using Infrastructure as Code.

How has it helped my organization?

Terraform is the most useful product for creating Infrastructure as Code. It has a lot of consistency, and we can control it in code. It provides a self-service infrastructure.

What is most valuable?

The solution helps us save a lot of costs. The product’s integrations help us a lot.

What needs improvement?

The product must improve DevOps features.

For how long have I used the solution?

I have been using the solution for about two years.

What do I think about the stability of the solution?

I never had any stability issues. I rate the stability a ten out of ten.

What do I think about the scalability of the solution?

It is easy to scale the product. I rate the scalability a ten out of ten.

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

We use other solutions for security in DevOps.

How was the initial setup?

The solution is deployed on the cloud. It is easy to deploy the solution. The documentation helps us a lot.

What was our ROI?

The tool has a lot of value. It pays for itself. We save a lot of time using the automation.

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

The solution is fairly priced.

What other advice do I have?

We're still learning how to use DevOps with our SOC. We need to improve our use cases. The tool is helpful for us to keep the same standards throughout the cloud. Currently, I'm only using AWS. I'm planning to use Azure in a few months. I would advise people to start using the solution. It is a cheap tool and saves us a lot of work. Overall, I rate the product a ten 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
Sr. MTS Software Engineer at a financial services firm with 10,001+ employees
Real User
Top 10
A rapid and promising tool that helps us with our operations
Pros and Cons
  • "It is a stable solution."
  • "Terraform doesn't support Artifactory as a backend."

How has it helped my organization?

HashiCorp Terraform does a good job and helps us set up all operations.

What is most valuable?

There are no specific valuable features as the whole product is good.

What needs improvement?

Terraform doesn't support Artifactory as a backend.

For how long have I used the solution?

We have used this solution for about four years and are using the latest version.

What do I think about the stability of the solution?

It is a stable solution.

What do I think about the scalability of the solution?

I am unsure about the scalability.

How are customer service and support?

We have never used their technical support.

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

We have not used any other solutions.

What other advice do I have?

I rate the solution a ten out of ten. HashiCorp Terraform is a rapid and promising tool.

Disclosure: I am a real user, and this review is based on my own experience and opinions.
PeerSpot user
Sibin John - PeerSpot reviewer
Site Reliability and DevOps Engineer at a tech services company with 51-200 employees
Real User
Top 5
A reasonably stable tool that offers high compatibility with multiple cloud providers
Pros and Cons
  • "The most valuable features of the solution are its simplicity of SQL language, its compatibility with multiple cloud providers, and its modules like the open source modules available, especially considering the fact that I work mainly on AWS."
  • "From a user's perspective, it would be great if a UI tool is made available in the open source version as well, but I don't think it may be introduced because of the high costs for it announced by HashiCorp in its licensed version...HashiCorp Terraform can improve backward compatibility."

What is our primary use case?

My company uses HashiCorp Terraform for cloud infrastructure provisioning. HashiCorp Terraform is the only IaC tool we use in our company.

What is most valuable?

The most valuable features of the solution are its simplicity of HCL language, its compatibility with multiple cloud providers, and its modules like the open source modules available, especially considering the fact that I work mainly on AWS. I believe that HashiCorp Terraform is one of the best products available in the market for my company's use cases. HashiCorp Terraform is also a feasible solution in terms of its availability of cloud resources.

What needs improvement?

I know a UI tool is available in the licensed version of HashiCorp Terraform. From a user's perspective, it would be great if a UI tool is made available in the open source version as well, but I don't think it may be introduced because of the high costs for it announced by HashiCorp in its licensed version.

HashiCorp Terraform can improve backward compatibility. From users' perspective, migration from one version to another is okay. The migration from an older version to a newer version is a big challenge in HashiCorp Terraform. We tried to fix the migration issues multiple times at our end and saw that some will not be compatible sometimes while, at times, certain aspects will be compatible with the new version.

For how long have I used the solution?

I have been using HashiCorp Terraform for four years. I use HashiCorp Terraform v0.12 or v0.13. I use the open-source version of the tool for my company's internal usage.

What do I think about the stability of the solution?

Stability-wise, I rate the solution a nine out of ten.

What do I think about the scalability of the solution?

Scalability-wise, I rate the solution a nine out of ten.

My organization has around 30 to 40 users of the solution.

How was the initial setup?

The simplicity or complexity of the initial setup depends on the number of accounts involved in the setup phase on the cloud, along with the resources to be managed. Based on my experience, one won't find HashiCorp Terraform's setup difficult if the configuration and management are in place.

The solution is deployed on the public cloud. I know people who use the solution on private and hybrid clouds.

What other advice do I have?

For those users with their infrastructure on the cloud, I would say that Terraform is a tool they can use immediately, even though other tools like Ansible are in the market. At some point, one may feel that Ansible lacks efficiency in a cloud infrastructure, which is a difficulty one may face when using Terraform in a bigger infrastructure. I would say that the combination of Ansible and Terraform is the best.

When following complex methods, Ansible is the best option. If you do too much configuration on the standalone file, then if not today, then tomorrow you might be stranded in a situation where you might not be able to edit or modify the configuration, especially when some improvements related to certain features have to be included in the product or your product's existing portal. It will be very tough to deal with, especially when it will be a single file with thousands of clients, making it a tough job to search. So you need to make sure that code reusability is properly using in your terraform code base.

I rate HashiCorp Terraform a nine 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?

Disclosure: I am a real user, and this review is based on my own experience and opinions.
Flag as inappropriate
PeerSpot user
Manager- Automation Engineering at a computer software company with 11-50 employees
Real User
Top 5Leaderboard
An easy-to-deploy solution that can be used for Infrastructure as Code (IaC)
Pros and Cons
  • "The most valuable feature of HashiCorp Terraform is the custom modules."
  • "HashiCorp Terraform state management could be improved to be used efficiently with multi-users."

What is our primary use case?

We use HashiCorp Terraform for Infrastructure as Code (IaC).

What is most valuable?

The most valuable feature of HashiCorp Terraform is the custom modules. The custom modules are built for each piece, like network and security, based on how the customers are. Then, we can tie them together, centralize them easily, and build them.

What needs improvement?

HashiCorp Terraform state management could be improved to be used efficiently with multi-users. Even though there are logs, there are always issues I've seen with people manipulating the TerraForm state. We cannot work efficiently with the solution if the state is incorrect. Due to certain reasons, if I have to change some piece of some resource, I cannot change it. I have to destroy the whole thing and then build a new one.

For how long have I used the solution?

I have been using HashiCorp Terraform for three years.

What do I think about the stability of the solution?

HashiCorp Terraform is a stable solution. I rate HashiCorp Terraform an eight or nine out of ten for stability.

What do I think about the scalability of the solution?

Around 20 users are using HashiCorp Terraform in our organization.

I rate HashiCorp Terraform an eight or nine out of ten for scalability.

How was the initial setup?

HashiCorp Terraform's initial setup is simple. Especially with TerraForm Cloud, you don't have to do anything since it's a SaaS platform. Also, TerraForm Enterprise is easy to install.

What about the implementation team?

HashiCorp Terraform's deployment is very easy and doesn't take much time.

What was our ROI?

We have seen a return on investment with HashiCorp Terraform.

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

HashiCorp Terraform's pricing depends on the way people use it. Not everyone uses the solution the way HashiCorp recommends to use it. HashiCorp Terraform goes by workspaces, and workspaces are more expensive than nodes. The nodes are cheaper.

People implement the solution in different ways. So you can use the solution with less money and make it cheaper, but that's not the recommended way. If you use the solution according to the recommended way by HashiCorp, it is more expensive.

What other advice do I have?

I am using the latest version of HashiCorp Terraform.

I recommend users build the framework and the modules correctly right from the beginning. Then, build the workspace as recommended by HashiCorp. According to HashiCorp's recommendation, one workspace should exist per application or environment. That's how people need to build it.

Then, modularize everything and make custom modules for the organizations. Especially things that stay out of the application, like security, network, and compute, should be in separate modules. Later, they can be brought into the application.

Overall, I rate HashiCorp Terraform an eight out of ten.

Which deployment model are you using for this solution?

Hybrid Cloud
Disclosure: My company has a business relationship with this vendor other than being a customer: Partner
Flag as inappropriate
PeerSpot user
Luis Mario Ramos Santos - PeerSpot reviewer
Senior FullStack Developer/Engineer/Architect at Capitbrok
Real User
Top 5Leaderboard
Has good scalability and is easy to integrate
Pros and Cons
  • "It is a stable solution."
  • "They should include tutorials for understanding the use cases."

What is most valuable?

It is easy to architect cloud infrastructure using the solution. Also, its simple interface helps in developing specific scripts.

What needs improvement?

They should provide more tutorials to understand the solution's use cases. Also, they include more specific features into it.

For how long have I used the solution?

I have been using the solution for three years.

What do I think about the stability of the solution?

It is a stable solution.

What do I think about the scalability of the solution?

It is a scalable solution.

How was the initial setup?

The solution's initial setup process is straightforward. It takes a couple of weeks to complete. Once you define everything, you can start working on it right away. The deployment happens almost immediately.

What other advice do I have?

I recommend the solution to others. I rate it ten out of ten.

Disclosure: I am a real user, and this review is based on my own experience and opinions.
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.
PeerSpot user
Buyer's Guide
Download our free HashiCorp Terraform Report and get advice and tips from experienced pros sharing their opinions.
Updated: March 2024
Product Categories
Configuration Management
Buyer's Guide
Download our free HashiCorp Terraform Report and get advice and tips from experienced pros sharing their opinions.