HashiCorp Terraform vs. Salt Project

Overview
ProductRatingMost Used ByProduct SummaryStarting Price
HashiCorp Terraform
Score 8.5 out of 10
N/A
Terraform from HashiCorp is a cloud infrastructure automation tool that enables users to create, change, and improve production infrastructure, and it allows infrastructure to be expressed as code. It codifies APIs into declarative configuration files that can be shared amongst team members, treated as code, edited, reviewed, and versioned. It is available Open Source, and via Cloud and Self-Hosted editions.
$0
Salt
Score 6.2 out of 10
N/A
Built on Python, Salt is an event-driven automation tool and framework to deploy, configure, and manage complex IT systems. Salt is used to automate common infrastructure administration tasks and ensure that all the components of infrastructure are operating in a consistent desired state.N/A
Pricing
HashiCorp TerraformSalt Project
Editions & Modules
Open Source
$0
Team & Governance
$20/user
per user/per month
Enterprise
Contact sales team
No answers on this topic
Offerings
Pricing Offerings
HashiCorp TerraformSalt
Free Trial
NoNo
Free/Freemium Version
YesNo
Premium Consulting/Integration Services
NoNo
Entry-level Setup FeeNo setup feeNo setup fee
Additional Details
More Pricing Information
Community Pulse
HashiCorp TerraformSalt Project
Considered Both Products
HashiCorp Terraform
Chose HashiCorp Terraform
Dbt was fine, but you end up with an extremely bloated repo/project. Often where all of the models are the same, named similarly, and generally just doesn't adhere to the concept of DRY coding.
In Terraform we're able to template a lot of this work and dynamically generate …
Chose HashiCorp Terraform
HashiCorp Terraform is much better than Cloud Formation. For one, the language is just easier to use, but more importantly, the provider ecosystem is much better in HashiCorp Terraform than in Cloud Formation.
Chose HashiCorp Terraform
HashiCorp Terraform has Cloud agnostic capability to use with different cloud vendors and the ease of creating the code with minimal effort.
Chose HashiCorp Terraform
I'm beginning to look at Pulumi. In my opinion, it looks like it would be a good replacement for HashiCorp Terraform, and it has the advantage of configuration via scripting, rather than via HCL, which is HashiCorp Terraform configuration markup language. In my opinion, the …
Chose HashiCorp Terraform
We have used Vagrant to develop our application in a virtual box environment and prepare it to be packed with Packer. The image created from these two tools will be deployed by Terraform.

We are using Consul for service discovery and as a job locking so we don't have two jobs or …
Chose HashiCorp Terraform
CloudFormation is only for AWS so if you're trying to deploy to another cloud provider then Terraform is your product. Terraform has lots of public support so you can find answers to questions by Googling. CloudFormation is easy to view the resources/services that are …
Chose HashiCorp Terraform
Terraform was more preferred over ansible as it is considerably more intutive.
Chose HashiCorp Terraform
Actually both products work very well. We use Terraform for speed and Ansible for configuration management both products work really well together
Chose HashiCorp Terraform
Terraform is a large step ahead of the previous generation of infrastructure-as-code providers. I'd never go back to, e.g. Puppet or Chef, Ansible, etc. That said I think that Pulumi has a good chance of displaying it, in no small part because the Terraform language itself …
Chose HashiCorp Terraform
AWS CloudFormation is better if you just want to stick with AWS because it's integration with AWS is better, provides auto-rollback in case of failures, and has GUI to manage and view the stacks built. Terraform is better when we want to stay cloud-agnostic. Terraform is better …
Chose HashiCorp Terraform
I can't find these applications listed, but other IaC tools I have used include: AWS CloudFormation, Azure Resource Manager Templates, and GCP Cloud Deployment Templates. For a comparable tool, I have the most experience with CloudFormation.

Compared to CloudFormation, the first …
Chose HashiCorp Terraform
Chef and Terraform are not apples to apples because Chef is more focused on config management, whereas Terraform is more focused on provisioning. However, I can say that where they do overlap in configuration management is that Terraform is the preferred tool because it has an …
Chose HashiCorp Terraform
Terraform is the solid leader in the space. It allows you to do more then just provisioning within a pre-existing servers. It is more extensible and has more providers available than it competitors. It is also open source and more adopted by the community then some of the other …
Chose HashiCorp Terraform
Terraform is open source and has strong community support. It is cloud-agnostic versus competing products like AWS cloud formation, hence has a distinct advantage. The scripts once set up are easy for developers to administer during development, hence during production …
Chose HashiCorp Terraform
  • UI design and development always sticks when it comes to multiple or say 'n' number of same configurations.
  • It's very easy to download and execute
  • Provides cross platform support and it's reliable.
Chose HashiCorp Terraform
Terraform has made better choices in how their product works, is used over time, and can be integrated with.
Chose HashiCorp Terraform
Centralized and standard configuration. Ease of VM provisioning.
Chose HashiCorp Terraform
- 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.
Chose HashiCorp Terraform
Terraform shares the methodology of creating configuration files for your infrastructure with tools like CloudFormation. However, Terraform is cloud-agnostic unlike CloudFormation which is AWS specific.
Terraform can be used to maintain AWS and OpenStack clusters …
Chose HashiCorp Terraform
CloudFormation is the lingua franca of AWS. You certainly can't go wrong using it, but I like the syntax and open-source nature of Terraform. That's mostly a personal preference. I have not tried any other non-Amazon tools for provisioning AWS. And, of course, the AWS tools …
Chose HashiCorp Terraform
HashiCorp Terraform has more possibilities
Salt
Chose Salt
Puppet was working fine for our needs. We decided to make the switch after our operating system vendor decided to stop official support for SaltStack.
Chose Salt
SaltStack is a newer product, so it learned some of the mistakes that Puppet made. It truly is a system that can respond to events as well as configure systems.
Chose Salt
SaltStack beats all of the tools above since it is a "6-in-one" solution: Config Management, Orchestration, Automation, parallel sys administration, remote execution and cloud management.

The other solutions only solve one or two problems.
Chose Salt
I've used shell scripts over ssh, custom in-house deployment tools, Chef, and SaltStack. I've evaluated Ansible, but I was never happy with performance over SSH. Chef's loose configuration data model and lack of philosophy and conventions around use makes it difficult for a …
Chose Salt
Chef and Puppet both require writing code, which I view as excessively involved for the task at hand. I have only needed to write pure python for a handful of Saltstack use cases - everything else has been configuration files.

Ansible, while elegant and simple, simply does not …
Chose Salt
We moved to SaltStack from Puppet about 3 years ago. Puppet just has too much of a learning curve and we inherited it from an old IT regime. We wanted something we could start fresh with. Our team has never looked back. SaltStack is so much easier for us to use and maintain.
Chose Salt
Ansible and Salt have emerged around the same time, and are pretty close.

Ansible pros:
Chose Salt
I looked at Chef and Ansible but it was a long time ago and I don't remember the pros and cons compared to SaltStack.
When I arrived at my company, Saltstack was already used in production so there has been no discussion about other deployment and automation solutions
Chose Salt
  • Puppet - ugly and heavy, ruby-based, although has the best set of production-ready modules and can be a good choice for big enterprise.
  • Chef - outdated, ruby-based.
  • Ansible - slow due to ssh transport, but is the best alternative for SaltStack.
Features
HashiCorp TerraformSalt Project
Configuration Management
Comparison of Configuration Management features of Product A and Product B
HashiCorp Terraform
7.9
Ratings
2% below category average
Salt Project
-
Ratings
Infrastructure Automation9.00 Ratings00 Ratings
Automated Provisioning8.70 Ratings00 Ratings
Parallel Execution6.20 Ratings00 Ratings
Node Management7.70 Ratings00 Ratings
Reporting & Logging7.80 Ratings00 Ratings
Version Control8.10 Ratings00 Ratings
Best Alternatives
HashiCorp TerraformSalt Project
Small Businesses
HashiCorp Vagrant
HashiCorp Vagrant
Score 10.0 out of 10
HashiCorp Terraform
HashiCorp Terraform
Score 8.5 out of 10
Medium-sized Companies
Ansible
Ansible
Score 9.2 out of 10
Ansible
Ansible
Score 9.2 out of 10
Enterprises
Ansible
Ansible
Score 9.2 out of 10
Ansible
Ansible
Score 9.2 out of 10
All AlternativesView all alternativesView all alternatives
User Ratings
HashiCorp TerraformSalt Project
Likelihood to Recommend
8.4
(0 ratings)
8.0
(0 ratings)
Usability
8.1
(0 ratings)
-
(0 ratings)
Performance
9.4
(0 ratings)
-
(0 ratings)
Support Rating
7.4
(0 ratings)
8.2
(0 ratings)
Ease of integration
9.2
(0 ratings)
-
(0 ratings)
User Testimonials
HashiCorp TerraformSalt Project
Likelihood to Recommend
8 because it's currently best-in-class and is completely essential to use in contrast to not expressing your infrastructure as code. That said, new contenders are nipping at its heels, and I expect stronger tools to emerge in the coming years. Hopefully the Terraform team is able to keep pace.
Read full review
Managing heterogeneous environments of large numbers of nodes, especially nodes which may need sudden changes (security updates, for instance), or frequent replacement, is a strength for Saltstack. Simplicity is not a strength for Saltstack. In a homogenous environment (all CentOS 7, for example, with no Debian or Windows) I might recommend using Ansible instead - it is less flexible and granular, but simpler to configure.
Read full review
Pros
  • Terraform is cloud agnostic. Just select the suitable provider for the cloud and it will do the job.
  • Templating is possible to make the Terraform templates reusable.
  • Variables can be created to make the templates generic so that it can be reused for different environments or resources.
Read full review
  • A superb remote execution framework! SaltStack allows us to easily program numerous functions on top of it. For example, we developed a fast parallel asynchronous deployment tool that handles all software deployment, including interdependent service management.
  • Configuration management is now easy. We take advantage of this to automate (in tandem with AWS tools) the stand-up of all servers and services. It is also relatively easy to create new configuration management states for software not yet supported by the community (e.g. Grafana).
  • Flexibility. Numerous small utilities have been built which simply wrap around SaltStack to allow tedious tasks to become easy.
Read full review
Cons
  • The errors generated by the plan and preview commands are pretty cryptic, it can be hard for newcomers to the scripting language to understand how to address problems.
  • Access controls around workspaces is limited which makes it harder to secure reduce the scope of teams ability.
  • Analytics around user usage, applies and plans would be helpful for managemenet.
Read full review
  • Managing network hardware should be more native and easy
  • SaltStack should buffer jobs and, when a client returns, make sure it is executed proberly
  • SaltStack should provide basic pillar and states structures to help get newbies started
Read full review
Usability
I love Terraform and I think it has done some great things for people that are working to automate their provisioning processes and also for those that are in the process of moving to the cloud or managing cloud resources. There are some quirks to HCL that take a little bit of getting used to and give picking up Terraform a little bit of a learning curve, thus the rating
Read full review
No answers on this topic
Performance
Terraform's performance is quite amazing when it comes to deployment of resources in AWS. Of course, the deployment times depend on various parameters like the number of resources to deploy and different regions to deploy. Terraform cannot control that. The only minor drawback probably shows up when a terraform job is terminated mid way. Then in many cases, time-consuming manual cleanup is required.
Read full review
No answers on this topic
Support Rating
Terraform is community driven but does offer support for it's Enterprise product. When contacting the team at HashiCorp we have always gotten resolution to our issues. They have been very responsive in returning our calls and answering our questions as they come up. We are currently using the open source model.
Read full review
We haven't had to spend a lot of time talking to support, and we've only had one issue, which, when dealing with other vendors is actually not that bad of an experience.
Read full review
Alternatives Considered
dbt was fine, but you end up with an extremely bloated repo/project. Often where all of the models are the same, named similarly, and generally just doesn't adhere to the concept of DRY coding. In Terraform we're able to template a lot of this work and dynamically generate assets based on variables instead.
Read full review
I've used shell scripts over ssh, custom in-house deployment tools, Chef, and SaltStack. I've evaluated Ansible, but I was never happy with performance over SSH. Chef's loose configuration data model and lack of philosophy and conventions around use makes it difficult for a team to share responsibility for configuration code. Needing to use additional tools to do orchestration for cross-host/agent dependency relationships made me look for more. SaltStack, while not as mature when I first tried it, impressed me with its speed and elegant design
Read full review
Return on Investment
  • Using code, we are able to build and deploy cloud resources faster and more consistently than producing the same resources in the console manually.
  • For applications that share architectures, we can reuse code to expedite development. We can also do the same with modules that are shared across the organization.
  • By defining all of our resources as code, we can deploy complete environments with "batteries included." For example, we can use code that spins up servers in a cloud provider and at the same time, creates monitors with in our monitoring provider. Likewise, when the servers are decommissioned, the monitors are decommed along with them. In the past, the creation and decom of the monitors would have been a disjointed, manual step. With Terraform we get it all with one "terraform apply."
Read full review
  • SaltStack has reduced the time it takes to deploy new machines for us 10-fold.
  • It is much easier for us to maintain compliance with industry standards with SaltStack.
  • No negative impacts!
Read full review
ScreenShots

HashiCorp Terraform Screenshots

Screenshot of Terraform StateScreenshot of Terraform RunsScreenshot of Terraform VariablesScreenshot of Terraform WorkspacesScreenshot of Terraform Cost Estimation