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.
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?
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.
Buyer's Guide
HashiCorp Terraform
December 2024
Learn what your peers think about HashiCorp Terraform. Get advice and tips from experienced pros sharing their opinions. Updated: December 2024.
824,067 professionals have used our research since 2012.
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.
Sr. Systems Engineer / Tech Logic Consultant. at a non-tech company with self employed
Enables companies to have a lot of options to ensure faster growth
Pros and Cons
- "I like the function that shows me a preview of what is happening in the infrastructure."
- "If you are copying something from a well running machine to a remote machine, there are some issues with the current version, but it is acceptable."
What is our primary use case?
I mainly use it for infrastructure automation. I use it to provision servers in different cloud providers and in-house with the principles to create a Kubernetes cluster. If you have a master node concept I would create the master and find related text.
The main function for me is to create infrastructure.
How has it helped my organization?
Because of Terraform, companies have a lot of options to ensure growing faster than what was normal in the past. Usually, it takes about two to three weeks to be done. But with Terraform, the approval is there and you can take it out in half an hour or ten minutes to deploy. That is a really good benefit of using Terraform.
What is most valuable?
I like the function that shows me a preview of what is happening in the infrastructure. We created it to find a workflow and find out which area has an issue over a certain period of time. If there is a patch with a change to the environment, I don't have to change a lot of code, I just have to change one or two variables with very few modifications to make sure the environment reflects that. So I love that.
What needs improvement?
I'm really happy with Terraform because it has really come a long way up to this point. It has a stable version.
For the moment, Terraform is actually working really well with a majority of our providers and technologies. At this point, the news cables are about 80% to 90% from the feed. I don't see a problem with the product. But if you're talking about homes, bugs and some certain features, I think there are features that could be included. For example, if you are copying something from a well running machine to a remote machine, there are some issues with the current version, but it is acceptable.
For how long have I used the solution?
I have been using HashiCorp Terraform for three months.
What do I think about the stability of the solution?
HashiCorp Terraform is extremely stable. But there are bugs that we are finding when doing some things. It's a really good product.
What do I think about the scalability of the solution?
For the moment I am the only one using it. But if you're talking about my clients and thinking about jobs and growth and the community behind it, it's really good.
How was the initial setup?
What I did first was see how this works, ask the community, and check all sorts of blogs that are really helpful. There is a lot of talking about Terraform so it is easy to study. It's not that hard to get a grasp on it. The information is there to make sure that someone can get this technology into their hands. I think the initial set up is really good.
If your core group is ready, it takes 10 minutes to one hour to make the magic happen. Then you have to make sure you know what you want. Once you get the job details it can be used in different projects because in the end everything is the same. Start with the hardware. It's about individual talent mainly. For me it takes about four to seven days to create a functioning Terraform.
What about the implementation team?
I did it in-house.
What other advice do I have?
HashiCorp Terraform is a great product and I think anyone working with infrastructure should have it.
On a scale of one to ten I guess I would give HashiCorp Terraform a nine.
Which deployment model are you using for this solution?
Private Cloud
Disclosure: I am a real user, and this review is based on my own experience and opinions.
Buyer's Guide
HashiCorp Terraform
December 2024
Learn what your peers think about HashiCorp Terraform. Get advice and tips from experienced pros sharing their opinions. Updated: December 2024.
824,067 professionals have used our research since 2012.
Senior Azure DevOps Engineer at SoftServe Ltd.
Super robust solution with the ability to create loops; great UI and integrates well
Pros and Cons
- "Modules can be reused extremely easily."
- "Community tech support could be a little better."
What is our primary use case?
We use this solution to manage our resources in a fully automatic way. I'm a senior Azure DevOps engineer and we are users of Terraform.
What is most valuable?
I like the Centrix feature which gives us the ability to create loops. I also like that modules can be reused extremely easily. This is a super robust solution and I would recommend it to anyone. It has a great user interface and integrates well.
What needs improvement?
It would be helpful for us if the open source tech support was a little better.
For how long have I used the solution?
I've been using this solution for four years.
What do I think about the stability of the solution?
The solution is stable.
What do I think about the scalability of the solution?
The solution is highly scalable.
How are customer service and support?
We use the free open-source version of Terraform so it can take time to resolve problems. The issues are generally minor, so it's not a big deal.
How would you rate customer service and support?
Neutral
How was the initial setup?
The deployment can take anywhere from 10 minutes to two hours.
What other advice do I have?
I rate this solution ten 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.
Senior Build And Release Engineer at a tech services company with 1,001-5,000 employees
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.
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.
Buyer's Guide
Download our free HashiCorp Terraform Report and get advice and tips from experienced pros
sharing their opinions.
Updated: December 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?