TrustRadius
Terraform enables you to create, change, and improve production infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.Terraform: a great infrastructure as a code toolTerraform is used to automate resource deployment in AWS using scripts. It is used by entire IT to deploy systems in AWS. The automation has saved hundreds of thousands of dollars in time and money. Since there is no manual deployment, there are no errors during deployments and developers can deploy in production since everything is defined in scripts.,Terraform is a premier IAAS tool. It provides modularization and planning features. It is platform and language agnostic. It is open source and thus has strong community support.,Terraform is vulnerable when it comes to error handling. Often when a terraform job is terminated midway, it leads to an inconsistent state of the deployed resources which needs manual cleanup. Terraform is an open source tool and has a related learning curve.,10,Deployment to cloud has been made easier. Developers do not need to know much, they can just do minor tweaks by changing variables and parameters here and there and manage to deploy to AWS. This has resulted in dollar benefits because deployment through the script is error-free compared to manual deployment.,,Amazon S3 (Simple Storage Service), Amazon DynamoDB, Gitlab,9,9Makes your environment more reliable and easily replicable.We are using Terraform to manage our entire environment as a code. We're controlling it with VCS (in our case, Github) and performing a good automation process with Puppet and Jenkins. Terraform helps us to achieve that in a quite organized way, structured and reliable. Furthermore, we now have versioning of our environment allowing us to have more control about how things change, how that was performed, and in the case of a mistake, it is quite easy to rollback.,The Terraform files would be considered as documentation since our entire environment is described there. Terraform will manage the state of your environment, that means, if something is not in conformity, it will try to fix keeping as close as possible of the desired state. With Terraform, you can manage different cloud environments at the same configuration files. That is really useful when you need to handle with different cloud providers.,The way Terraform manages variables is a bit annoying. Sometimes we need to declare the same variable in more the one file. So far, this doesn't make sense for me. Due to the speed, as new AWS products are released, if we want to work with something new, we need to wait for a new version with this new feature be released. As with most DevOps tools, Terraform has its own DSL language and will require time to learn the product for you feel confident in its usage.,8,Our deployments are more reliable. This way we avoid having unexpected outages due to misconfiguration performed manually. Agility. While doing this using our previous way, we used to spend hours to deploy a new environment. With Terraform it is just a few minutes. Better control! We can track every single change in our environment by our control versioning system.,Zabbix, Puppet Enterprise (formerly Puppet Data Center Automation), Jenkins,8,7Terraform: Best in Class SaaS Configuration ManagementTerraform is the cloud configuration management tool that is used to bring SaaS product configurations into text (and version control). By bringing the configurations into text and version control, stricter change management and review procedures can be used. Terraform has a large number of providers (services that Terraform can connect with), including AWS, GCP, Microsoft Azure, etc.,Multiple providers that allow for configuration of multiple services in the same codeset Great community support Excellent open source support,Extremely expensive enterprise services that can be essential for less technical companies Large overhead and learning curve for initial deployment Maintenance overhead can be high, product is constantly changing and requires significant management,10,Decreased downtime due to fewer changes Easier to hire new staff to support the popular open source program Increased management overhead,Ansible and SaltStack,SolarWinds Kiwi Syslog Server, AWS CodePipeline, DockerWhy I used TerraformIt's a great IaC to develop your private/public cloud environment. It almost covers major devops tools and other provisioners which help to plan the complete pipeline in one framework. It's lightweight and easy to start the basic blocks and integrate. Features like backend and iterations are great options to maximize the scale of infrastructure.,Orchestration provision support State backend support like swift Debug support,Local testing,9,Infrastructure as Code Done Right!We use Terraform for our clients to implement Infrastructure as Code. Our clients are typically seeking our services to get up to speed on DevOps strategies and culture. We almost always recommend Terraform for cloud infrastructure orchestration especially since Terraform supports various cloud providers and has rich constructs for modularity and reusability.,Great implementation of Infrastructure as Code concept. Supports various cloud providers, including AWS, Azure and OpenStack Encourages good design practices Collaboration is made possible by using remote backend to store state files (such as S3),Product is still maturing and there are some design limitation Refactoring infrastructure code can sometimes become troublesome and unnecessarily require re-creating resources (such as when renaming resources) Collaboration requires proper training or could result in dangerous outcome, engineers may easily overwrite remote state file or step on each other's toes. Collaboration process needs some improvement.,10,Terraform is open source and free and learning curve is medium. It is an amazing investment overall that leads businesses to have a clean and well-maintained inventory Terraform simplifies orchestrating complex infrastructure setups, such as clusters that involve different types of AWS resources can be templated and reused to provision new environments or rebuild existing ones, making the business truly agile. Conventions can be enforced be using organization-level modules, such as naming conventions, tagging requirements,..etc,Cloud Formation,Chef, Ansible, Docker, Terraform, Puppet Data Center Automation, MongoDB
Unspecified
Terraform
26 Ratings
Score 9.2 out of 101
<a href='https://www.trustradius.com/static/about-trustradius-scoring' target='_blank' rel='nofollow'>trScore algorithm: Learn more.</a>TRScore

Terraform Reviews

Terraform
26 Ratings
<a href='https://www.trustradius.com/static/about-trustradius-scoring' target='_blank' rel='nofollow'>trScore algorithm: Learn more.</a>
Score 9.2 out of 101
Show Filters 
Hide Filters 
Filter 26 vetted Terraform reviews and ratings
Clear all filters
Overall Rating
Reviewer's Company Size
Last Updated
By Topic
Industry
Department
Experience
Job Type
Role

Reviews (1-10 of 10)

  Vendors can't alter or remove reviews. Here's why.
Dhruba Jyoti Nag profile photo
January 30, 2019

Review: "Terraform: a great infrastructure as a code tool"

Score 10 out of 10
Vetted Review
Verified User
Review Source
Terraform is used to automate resource deployment in AWS using scripts. It is used by entire IT to deploy systems in AWS. The automation has saved hundreds of thousands of dollars in time and money. Since there is no manual deployment, there are no errors during deployments and developers can deploy in production since everything is defined in scripts.
  • Terraform is a premier IAAS tool.
  • It provides modularization and planning features.
  • It is platform and language agnostic.
  • It is open source and thus has strong community support.
  • Terraform is vulnerable when it comes to error handling.
  • Often when a terraform job is terminated midway, it leads to an inconsistent state of the deployed resources which needs manual cleanup.
  • Terraform is an open source tool and has a related learning curve.
Terraform is more versatile when compared to cloud formation. It is cloud-agnostic, so unlike cloud formation, it is able to deploy resources in cloud ecosystems other than AWS. The code can be modularized, hence there is ample scope of reuse. It can also be used to deploy apps written in various languages. In short, it makes deployment to cloud a breeze.
Read Dhruba Jyoti Nag's full review
Erlon Sousa Pinheiro profile photo
February 02, 2019

Terraform Review: "Makes your environment more reliable and easily replicable."

Score 8 out of 10
Vetted Review
Verified User
Review Source
We are using Terraform to manage our entire environment as a code. We're controlling it with VCS (in our case, Github) and performing a good automation process with Puppet and Jenkins. Terraform helps us to achieve that in a quite organized way, structured and reliable. Furthermore, we now have versioning of our environment allowing us to have more control about how things change, how that was performed, and in the case of a mistake, it is quite easy to rollback.
  • The Terraform files would be considered as documentation since our entire environment is described there.
  • Terraform will manage the state of your environment, that means, if something is not in conformity, it will try to fix keeping as close as possible of the desired state.
  • With Terraform, you can manage different cloud environments at the same configuration files. That is really useful when you need to handle with different cloud providers.
  • The way Terraform manages variables is a bit annoying. Sometimes we need to declare the same variable in more the one file. So far, this doesn't make sense for me.
  • Due to the speed, as new AWS products are released, if we want to work with something new, we need to wait for a new version with this new feature be released.
  • As with most DevOps tools, Terraform has its own DSL language and will require time to learn the product for you feel confident in its usage.
Two scenarios I can describe Terraform as an amazing option are when you have a complex (or not) cloud environment which needs to be deployed and destroyed frequently in different regions. Using Terraform you can do that using just one command line. You'll spend some time designing the config files, but you'll save a huge amount of time every time you need to deploy this same environment. Furthermore, you can create those scripts parametrized, in a way that you can give a few parameters allowing some flexibility. The second case is when you have the same environment in different cloud providers. You can manage them using just one resource.
Read Erlon Sousa Pinheiro's full review
Stephen Groat profile photo
December 18, 2018

Review: "Terraform: Best in Class SaaS Configuration Management"

Score 10 out of 10
Vetted Review
Verified User
Review Source
Terraform is the cloud configuration management tool that is used to bring SaaS product configurations into text (and version control). By bringing the configurations into text and version control, stricter change management and review procedures can be used. Terraform has a large number of providers (services that Terraform can connect with), including AWS, GCP, Microsoft Azure, etc.
  • Multiple providers that allow for configuration of multiple services in the same codeset
  • Great community support
  • Excellent open source support
  • Extremely expensive enterprise services that can be essential for less technical companies
  • Large overhead and learning curve for initial deployment
  • Maintenance overhead can be high, product is constantly changing and requires significant management
Terraform is best in cloud environments where configuration management is critical and providers (services) have Terraform support. When different services interact with each other, the consolidation of configurations in a single repository can help version control and debug potential issues due to the interaction of these distinct services. The overhead and management of Terraform doesn't always pay off when only a single provider is used. In those cases, sometimes the speed and ease of use for web GUIs is better.
Read Stephen Groat's full review
Murugan Mani profile photo
August 15, 2017

User Review: "Why I used Terraform"

Score 9 out of 10
Vetted Review
Verified User
Review Source
It's a great IaC to develop your private/public cloud environment. It almost covers major devops tools and other provisioners which help to plan the complete pipeline in one framework. It's lightweight and easy to start the basic blocks and integrate. Features like backend and iterations are great options to maximize the scale of infrastructure.
  • Orchestration provision support
  • State backend support like swift
  • Debug support
  • Local testing
  • Terraform is a well contributed open source project but support is average
  • Coverage of various tools is great where only important functionalities were covered like in Chef
  • It provides the automation from various pieces but running the same from scripts/other external inputs would be great
  • Interpolations are supported but not well enough
  • Secret management is poor and needs support on special characters
Read Murugan Mani's full review
Aiman Najjar profile photo
April 26, 2017

Terraform Review: "Infrastructure as Code Done Right!"

Score 10 out of 10
Vetted Review
Verified User
Review Source
We use Terraform for our clients to implement Infrastructure as Code. Our clients are typically seeking our services to get up to speed on DevOps strategies and culture. We almost always recommend Terraform for cloud infrastructure orchestration especially since Terraform supports various cloud providers and has rich constructs for modularity and reusability.
  • Great implementation of Infrastructure as Code concept.
  • Supports various cloud providers, including AWS, Azure and OpenStack
  • Encourages good design practices
  • Collaboration is made possible by using remote backend to store state files (such as S3)
  • Product is still maturing and there are some design limitation
  • Refactoring infrastructure code can sometimes become troublesome and unnecessarily require re-creating resources (such as when renaming resources)
  • Collaboration requires proper training or could result in dangerous outcome, engineers may easily overwrite remote state file or step on each other's toes. Collaboration process needs some improvement.
Infrastructure as Code: Best suited for cloud infrastructure but could work for data center infrastructure. Terraform is good for orchestrating infrastructure, not "configuring" it, e.g. even though you can use cloud-init to provision and install packages. For advanced configuration management, you will probably need a tool like Chef or Puppet
Read Aiman Najjar's full review
Kyle Rockman profile photo
April 14, 2017

User Review: "Terraform Improved our World"

Score 10 out of 10
Vetted Review
Verified User
Review Source
The entire Under Armour Connected Fitness business unit leverages terraform to treat our infrastructure as code - with a UI wrapped on top of it to give federated access to all our developers.
  • Configuration as Code in a modular reusable manner.
  • The plan apply life cycle is the best, it gives structure to what can sometimes be a scary process of modifying your infrastructure - even after it has aged or hasn't been touched in years.
  • Integrating with many outside services and providers keeps us from having to hack things together.
  • Integration with Hashicorp's Vault for secret management and temporary credentials makes giving out access a breeze.
  • It's a command-line tool and as such, some users in our organization are not comfortable with that. We ended up wrapping the tool with a UI to give the less skilled users access as well as layering on top a templating system to abstract away best practices and make things far simpler to configure.
Our experience switching from Salt Stack to Terraform has been so beneficial and the uptake has been far stronger by our users than it ever was with Salt Stack. I still think Terraform could do with a usability pass to reduce the learning curve and a UX pass to facilitate use by those who do not like command-line tools.
Read Kyle Rockman's full review
No photo available
April 12, 2017

User Review: "Terraform - Automate your company's IT"

Score 10 out of 10
Vetted Review
Verified User
Review Source
Terraform is used by our monitoring team and I used Terraform to architect it to connect to OpenStack and spin up VMs for monitoring. The monitoring team uses it for installing/configuring monitoring software. Again Terraform's script has everything to stage the VM, connect to Chef and install/configure all the required software. Terraform addresses our on-demand provisioning issue, which in turn helps in IT flexibility to cope with business demands.
  • It helps make VM provisioning easier.
  • It helps integrate CICD software pipeline to provisioning, thereby reducing the time to quickly standup a server/service.
  • It helps make clustering of boxes easier.
  • Provisioning bare metal.
  • Replacing Chef as the automation/compliance software for enterprises.
  • Get away from that single state file dependency. If someone accidently deletes the state file or that file becomes corrupt, the entire environment state is lost and we have to rebuild the whole infrastructure.

VM provisioning

VM clustering

Automation

Read this authenticated review
Charles Anderson profile photo
January 16, 2017

Review: "Shape your (virtual) world with Terraform"

Score 10 out of 10
Vetted Review
Verified User
Review Source
We are currently using Terraform in some early development projects and looking at it as a possible replacement for Amazon Cloud Formation. So far, this is experimental and not production. We are provisioning virtual infrastructure in AWS - i.e., we are not using any of the cross-provider facilities. That said, avoiding vendor lock-in is an appealing benefit of Terraform.
  • I find the HashiCorp Configuration Language (HCL) superior to raw JSON used by Cloud Formation.
  • Being open-source is a plus not just for "philosophical" reasons, but it also provide rapid support when new products are announced from vendors like Amazon.
  • The fact that it's free and open-source means that it's easy to start evaluating Terraform (and most of the other tools from HashiCorp) without being pressured by sales people.
  • Until recently, there haven't been any books about Terraform. Although the online documentation for Terraform is pretty good, it's often nice to have a traditional book, especially when learning. Now, there are two books on the subject.
  • Terraform is rapidly evolving. Part of that is the nature of the space - vendors are always coming up with new offerings and API. But, some days I wish the targets would stop moving for a bit.
Terraform is a great tool for building virtual infrastructures in clouds like Amazon and Google. If you are building a heterogenous infrastructure spanning multiple vendors, I don't know of any other single tool that can do that. Even in the case where you're just building AWS infrastructure, I prefer the HCL syntax of Terraform, and I dislike getting roped into using some of the Amazon tools.
Read Charles Anderson's full review
Deepshikha Gandhi profile photo
February 15, 2017

Terraform Review: "DevOps person"

Score 8 out of 10
Vetted Review
Verified User
Review Source
Terraform is being used by our DevOps team to manage mainly our AWS infrastructure as code. It enables us to collaborate, automate and share pieces of our cloud infrastructure amongst and across teams. Terraform enables us to maintain reproducible, shareable and version-controlled infrastructure and deployments as compared to the older methodology of owning and configuring machines by hand.
  • Ability to "plan" and "apply" configs. Plans show us what changes will take place - so it's like a no-op safe mode dry-run. Apply actually executes the changes.
  • Terraform has providers for most major infrastructure providers like AWS, VMWare, OpenStack
  • Ability to use the same code/configs to provision different environments - QA, staging and production
  • Ability to create modules and share them between services
  • Terraform uses it's own DSL called the Hashicorp Configuration Language which takes some getting used to.
  • Terraform state files store secrets in plain text which is a bad idea when you push it to version-control.
  • Multiple teammates working simultaneously on a single state file is a problem. It's easy to forget to push or pull the latest state. Also version control systems like Git don't have a way of locking a file.
If you have environments that change a lot and you need ephemeral systems on the fly to test your code releases, Terraform is the tool for you. Maintaining different environments like staging and QA before releasing to production is also easy as you can use the same code and configs for all three. Terraform also makes it easy to destroy these environments when they become obsolete.
Read Deepshikha Gandhi's full review
SHASHIDHAR REDDY MALLEPALLY profile photo
December 15, 2016

User Review: "Advantages of Terraform"

Score 10 out of 10
Vetted Review
Verified User
Review Source
Currently we are using terraform in our department. We are using to implement AWS stack creation with Terraform. It's easy to use compared to CFT. We are developing infrastructure with Terraform and currently deploying into AWS. In future if we want to use a different cloud it's easy to reuse this.
  • Easy to build cross cloud providers infrastructure
  • Reusable stack resources by using remote state
  • N/A
It's well suited if you are targeting to multi-cloud deployment. Terraform manages state via a json file. This file serves as the source of truth about what the actual environment contains. However, the problem is the inability of Terraform to uniquely identify resources that it creates.
Read SHASHIDHAR REDDY MALLEPALLY's full review

About Terraform

Terraform enables you to create, change, and improve production infrastructure. It is an open source tool that codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned.

Terraform Technical Details

Operating Systems: Unspecified
Mobile Application:No