Terraform is the infrastructure as code solution used across our business.
Cloud & DevOps Architect at Accenture
Infrastructure as code tool that makes it easier to manage a multi-cloud environment
Pros and Cons
- "This solution makes it easier to manage a multi-cloud environment and have your entire infrastructure as code."
- "On occasion, I have noticed a number of bugs in this solution that have needed to be fixed."
What is our primary use case?
What is most valuable?
The way the modules are divided for infrastructure provisioning and are set up for reliability to offer plug and play functionality has been really useful. This solution makes it easier to manage a multi-cloud environment and have your entire infrastructure as code.
What needs improvement?
On occasion, I have noticed a number of bugs in this solution that have needed to be fixed.
In a future release, it would be great to have an easier way of troubleshooting. We'd like to have a dashboard where company management can get a full view of provisioning.
For how long have I used the solution?
I have used this solution for three years.
Buyer's Guide
HashiCorp Terraform
November 2024
Learn what your peers think about HashiCorp Terraform. Get advice and tips from experienced pros sharing their opinions. Updated: November 2024.
816,406 professionals have used our research since 2012.
What do I think about the scalability of the solution?
This is a scalable solution.
How are customer service and support?
It would be great to have faster resolution of instances where there are bugs in the system.
How would you rate customer service and support?
Neutral
How was the initial setup?
The initial setup is straightforward.
What other advice do I have?
I would rate this solution an eight out of ten.
Disclosure: My company has a business relationship with this vendor other than being a customer: Partner
DevOps Engineer at BioCatch
Can work with different cloud providers and saves a lot of time and human errors
Pros and Cons
- "We save a lot of time with this solution."
- "It should have a more object-oriented approach like different coding languages."
What is our primary use case?
We use it to provision cloud infrastructure. We use it to provision all kinds of infrastructure from wherever we want, we Terraform to the cloud.
We provision new infrastructure, we update existing infrastructure with it, we manage our DNS records, and also deploy new applications on Kubernetes. That's the main use, but we use it for all of our infrastructures, so it has a lot of different use cases.
How has it helped my organization?
Before we used it, we were writing a lot of scripts to provision infrastructure and there weren't guidelines for anything on how to provision and how our environment will look. Now with Terraform, it's all templated and everyone in my team just uses modules that are templates, modules of Terraform, and all our environments look the same. It doesn't matter if it's dev, if it's QAs, if it's production, it looks the same. It just has different names and different types of machines. We want to pay less in the dev environments and QA but we want to have better performance in production. It's just the variable to change the type of machine that we want to use, but the template remains the same.
We save a lot of time with this solution. It also saves a lot of human errors and the whole team knows how to do the same thing.
What is most valuable?
The most valuable aspect of this solution is that it's agnostic. It can work with different cloud providers, which we may do in the future, so it benefits us. With not much change, I can deploy the same infrastructure to other cloud providers. Now we work with Azure but we can work with AWS or GCP and with minor changes we can deploy the same applications to other clouds. We can replicate the existing cases with minor changes and it's easily deployed.
What needs improvement?
It should have a more object-oriented approach like different coding languages.
What do I think about the stability of the solution?
It's really stable. We have no issues with it.
What do I think about the scalability of the solution?
There are around five or six DevOps engineers who use this solution in my company. It's used on a daily basis. We use it for maybe 20% of our infrastructure, but we intend to use it for 100% all with Terraform.
How are customer service and technical support?
I haven't needed to contact their technical support.
Which solution did I use previously and why did I switch?
We switched to Terraform because we wanted to minimize time and minimize human errors. We wanted to have alignment between all of our environments and really just development is faster.
We went with it because I had a really good experience with it in previous jobs.
How was the initial setup?
The initial setup is straightforward. There are some things you need to understand to know if you want to make more complex templates but it's pretty straightforward. It's really flexible.
Overall, the deployment takes around 15 minutes.
What's my experience with pricing, setup cost, and licensing?
It's open-source so it's free.
What other advice do I have?
My advice to someone considering this solution would be to work with the HashiCorp Best Practices of Terraform, work with Terraform modules, and write templates for everything.
I would rate Terraform a nine out of ten.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Buyer's Guide
HashiCorp Terraform
November 2024
Learn what your peers think about HashiCorp Terraform. Get advice and tips from experienced pros sharing their opinions. Updated: November 2024.
816,406 professionals have used our research since 2012.
Co-Owner at OutMost
Cost-effective product with an efficient infrastructure code feature
Pros and Cons
- "The platform's most valuable feature is the infrastructure as code aspect, which allows us to code the infrastructure part, making deployments more efficient."
- "One area for improvement could be the inclusion of more dedicated Terraform providers developed by the companies themselves, rather than relying on third-party developers."
What is our primary use case?
We use the product for cloud deployments, specifically provisioning services in the cloud.
What is most valuable?
The platform's most valuable feature is the infrastructure as code aspect, which allows us to code the infrastructure part, making deployments more efficient.
What needs improvement?
One area for improvement could be the inclusion of more dedicated Terraform providers developed by the companies themselves, rather than relying on third-party developers.
Additional features could include more intuitive environment-specific configurations and possibly enhanced support for development and production environments.
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 platform's stability a ten out of ten.
What do I think about the scalability of the solution?
I rate the platform scalability a ten out of ten.
How was the initial setup?
The initial setup was straightforward. I rate the process a ten out of ten.
What's my experience with pricing, setup cost, and licensing?
The product can be cost-effective, especially if you use the CLI and do not require the cloud solutions provided by HashiCorp. It can be used for free, which is beneficial for small companies.
What other advice do I have?
I rate HashiCorp Terraform a ten out of ten.
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Last updated: Jul 29, 2024
Flag as inappropriatePartner & principal technologist at SwanSpeed Consulting
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.
Network Team Lead at Atlas Security
High availability, effective server provisioning tool for both on-premise and cloud environment, and quick setup
Pros and Cons
- "HashiCorp Terraform is highly stable."
- "I initially found the initial HashiCorp Terraform difficult to comprehend. It's complex and not straightforward, requiring proper training to grasp it. Even someone with a background in networking or cybersecurity would need guidance from someone knowledgeable."
What is our primary use case?
We use HashiCorp Terraform orchestration tool for infra provisioning (mostly servers), both in the cloud and on-premise environments. This allows for VM provisioning, networking, and storage management, especially in a cloud environment where we have many servers that can't be provisioned one by one.
What is most valuable?
The most valuable feature is the ease of infrastructure provisioning in a very large environment in the shortest time.
What needs improvement?
I initially found the initial HashiCorp Terraform difficult to comprehend. It's not straightforward especially in complex cloud environments, requiring proper training to grasp it. Even someone with a background in networking or cybersecurity would need guidance from someone knowledgeable.
Inclusion of revert function or rollback action for any invalid or wrong changes to resources.
For how long have I used the solution?
I have been using HashiCorp Terraform for approximately one year.
What do I think about the stability of the solution?
HashiCorp Terraform is highly stable.
How are customer service and support?
I did not use the technical support from the vendor.
How would you rate customer service and support?
Neutral
How was the initial setup?
The initial setup of HashiCorp Terraform is easy to do. The implementation took a few hours to complete for a small cloud environment.
What's my experience with pricing, setup cost, and licensing?
Terraform Enterprise plan is quite expensive!
What other advice do I have?
HashiCorp Terraform is the best platform for creating and managing resources on cloud platforms and other services through their application programming interfaces (APIs) in a cloud environment.
I rate HashiCorp Terraform an eight out of ten.
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.
Software Engineering Manager at a tech services company with 10,001+ employees
Easy to use solution that has made infrastructure provision fast and secure for our business
Pros and Cons
- "This solution is a fast and secure way to provision infrastructure."
- "This solution could be improved by adding features such as CDM to accelerate the access of data by the users."
What is our primary use case?
We use this solution for infrastructure and support for a mobile application for a bank.
What needs improvement?
This solution could be improved by adding features such as CDM to accelerate the access of data by the users.
It would be useful to be able to test functionality when building infrastructure. Currently we use other tools to do this.
For how long have I used the solution?
We have used this solution for one year.
What do I think about the stability of the solution?
This is a stable solution.
What do I think about the scalability of the solution?
This is a scalable solution.
How was the initial setup?
The initial setup is straightforward. It took a few weeks to implement with the help of three engineers.
What other advice do I have?
This solution is a fast and secure way to provision infrastructure.
I would rate it a ten out of ten.
Which deployment model are you using for this solution?
Public Cloud
Disclosure: My company has a business relationship with this vendor other than being a customer: Partner
Senior Information Technology System Analyst at YAUSH Technologies
Easy to deploy, stable, and scalable with good support and many useful features
Pros and Cons
- "The state backend, automated describe functionality, modular structures, and variablization using templates are most valuable."
- "The state locking functionality can be improved. In certain situations, we have to force-unlock the state, which sometimes does not work. When that happens, we have to manually go to the state backend and remove that particular state, which is kind of a cumbersome process. It should also have more functions, more expressions, and support for more products."
What is our primary use case?
We are using it for infrastructure as code automation. We are running its latest version.
What is most valuable?
The state backend, automated describe functionality, modular structures, and variablization using templates are most valuable.
What needs improvement?
The state locking functionality can be improved. In certain situations, we have to force-unlock the state, which sometimes does not work. When that happens, we have to manually go to the state backend and remove that particular state, which is kind of a cumbersome process.
It should also have more functions, more expressions, and support for more products.
For how long have I used the solution?
I have been using this solution for almost four years.
What do I think about the stability of the solution?
It has good stability.
What do I think about the scalability of the solution?
It is good in terms of scalability. We have almost 35 to 40 users. We definitely plan to increase its usage.
How are customer service and technical support?
We did interact with their technical support. It was easy to schedule a call with them. It was also easy to contact their sales team and the support team. It was definitely a good experience.
Which solution did I use previously and why did I switch?
We had AWS CloudFormation as well as Azure ARM templates.
How was the initial setup?
Its initial setup is quite good and simple. It didn't take more than one and a half hours.
What about the implementation team?
I did it myself. We have four people for its maintenance. We have one admin and three deployers.
What's my experience with pricing, setup cost, and licensing?
They have given it to us at a monthly cost, but it is on a yearly basis.
What other advice do I have?
I would advise others to understand the state backend and how Terraform works. They should also go through functions as well as expressions in the Terraform official documentation.
I would rate HashiCorp Terraform 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?
Amazon Web Services (AWS)
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Co Founder and Technical Architect at Think NYX Technologies LLP
Supports many different platforms and has helped us to standardize our infrastructure setup
Pros and Cons
- "The most valuable feature is the support for different platforms like cloud, datacenters, VCS, databases, various storage types, and Kubernetes."
- "They have added a feature that helps us to import existing resources to our workspace, but if they can help us to create the code for the import, as well, then it would be a great addition."
What is our primary use case?
We are using Terraform to manage our multi-cloud requirement for different demos and test environments. It helps us set up the entire environment in a few mins with the exact configuration in AWS, Azure, or GCP, along with other setups like a database, Kubernetes, etc.
How has it helped my organization?
Terraform helped us to standardized our infrastructure setup and to reduce errors occurring due to manual execution. It has made our environment more efficient.
What is most valuable?
The most valuable feature is the support for different platforms like cloud, datacenters, VCS, databases, various storage types, and Kubernetes.
What needs improvement?
They have added a feature that helps us to import existing resources to our workspace, but if they can help us to create the code for the import, as well, then it would be a great addition.
For how long have I used the solution?
We have been using HashiCorp Terraform for more than two years.
What do I think about the stability of the solution?
We should always check the changes or impact of new release which is common for all tools so for me its good in terms of stability.
What do I think about the scalability of the solution?
The scalability is good.
Which solution did I use previously and why did I switch?
We have used platform CLIs and other customized scripting solutions that need lots of maintenance and care.
How was the initial setup?
The initial setup is quite easy and straightforward.
What's my experience with pricing, setup cost, and licensing?
The setup for Terraform is quite easy and currently, we are using their community version along with Jenkins.
Which other solutions did I evaluate?
We have evaluated other options like CloudFormation and Cloud Deployment Manager, but those were platform-dependent tools, so not suited for our multi-cloud model.
Which deployment model are you using for this solution?
Hybrid Cloud
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Buyer's Guide
Download our free HashiCorp Terraform Report and get advice and tips from experienced pros
sharing their opinions.
Updated: November 2024
Product Categories
Configuration ManagementPopular Comparisons
Microsoft Intune
Microsoft Configuration Manager
Red Hat Ansible Automation Platform
VMware Aria Automation
Red Hat Satellite
AWS Systems Manager
SolarWinds Network Configuration Manager
BMC TrueSight Server Automation
SUSE Manager
OpenText ZENworks Configuration Management
Spring Cloud
ManageEngine OS Deployer
CFEngine Enterprise
Parallels Mac Management for Microsoft SCCM
Buyer's Guide
Download our free HashiCorp Terraform Report and get advice and tips from experienced pros
sharing their opinions.
Quick Links
Learn More: Questions:
- Which Infrastructure as Code (IaC) Configuration Management platform would you choose - Red Hat Ansible Automation Platform or HashiCorp Terraform?
- When evaluating Configuration Management, what aspect do you think is the most important to look for?
- Infrastructure-as-code vs infrastructure configuration
- What is automated configuration management?
- What are the advantages of using Infrastructure as Code (IaC) tools?
- Why is Configuration Management important for companies?