Infrastructure as Code Done Right!
Updated April 26, 2017

Infrastructure as Code Done Right!

Aiman Najjar | TrustRadius Reviewer
Score 10 out of 10
Vetted Review
Verified User

Overall Satisfaction with Terraform

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.
  • 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
- Terraform syntax is much easier to read and learn than Cloud Formation.
- Terraform already supports AWS as well as several other cloud providers.
- Terraform is backed by a great and supportive open-source community.
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