TL; DR – HashiCorps user base continues to expand, with active community feedback across several key projects. Terraform is becoming a key component as companies continue to move to an infrastructure as code model, Vault usage is accelerating.
It is rare to have a conversation these days with companies that are working on infrastructure at scale that does not involve a mention of at least one HashiCorp product, and in many cases the number is two or more. We last looked at HashiCorps community in 2015, and since then they have continued their focus on growing a strong user base which is well on its way to be becoming a significant enterprise footprint.
The ‘unix philosophy’ and platform agnostic approach that is taken by HashiCorp in their product development continues to allow them to rise somewhat above the fray of the scheduling and infrastructure battles that are ongoing in the cloud native space. This approach is attractive to many enterprise users who are far from religious about any given technology, particularly those in a relatively early stage of adoption. As we have recently noted many enterprises have significant hedging strategies in place around cloud native technologies.
We should point out that for the purposes of this analysis we have included Serf (the predecessor to Consul), al
although the project is no longer actively developed or maintained at this point. While no longer an active project, it still gets attention in some quarters. Mitchell Hashimoto at HashiCorp has pointed out that Serf is still maintained, and is now used as a component in other projects, rather than in a standalone manner.
The Broad Community
While Vagrant continues to be an on-ramp for many users, Terraform, Consul and Vault frequently come up as entry points, particularly as people move to production with cloud native applications. The interconnections between users that have expressed interest in the various projects are interesting to observe.
The level of issues logged, particularly around Terraform, continues to highlight a vibrant user base, while both Consul and Vault have a steady stream of issues coming in from the wider community.
Looking at Stack Overflow we note that Vagrant is by far the dominant tool in terms of questions, although this is hardly surprising – Vagrant is an incredibly popular tool with developers. We did not include Vault or Nomad in our analysis here, Vault as it gets confused with Chef-Vault and Nomad as it barely features on Stack Overflow.
Looking at each project a clear trend emerges. Unsurprisingly HashiCorp dominate the number contributions to each project over time, but when it comes to issues the majority are coming from the wider community in almost every case, except for Consul, which is roughly on a 50/50 footing. In all cases this is a sign of strong adoption.
Terraform provides an abstraction layer across various cloud providers for deployments, and is a tool that we hear increasingly good things about. That is not to say Terraform is not without its flaws – but the problem it is attempting to solve – that of abstraction across multiple providers – is far from trivial to solve, and the ongoing updates is a significant undertaking, even with a large amount of support from other vendors.
Consul is fast becoming one of the go to tools for service discovery in microservices deployments. As we noted recently Consul usage continues to grow, and monitoring vendors continue to report Consul instances across many of the microservices deployments they monitor.
Vault is a secure secrets store, used for managing passwords, api keys, certificates and so forth. We frequently hear of Vault being used in enterprise deployments, a fact we touched on recently in relation to cloud native security.
Nomad is a cluster manager and scheduler. We often find it used in the same context as tools such as Kubernetes or Mesosphere, but this is an incorrect comparison – its focus is on a much smaller problem space, but with a much wider range of applications.
Packer is a tool for building machine images, with a focus on ensuring users follow an infrastructure as code approach. Its usage is low key, but reasonably widespread.
As the initial entry point for many people when it comes to HashiCorp tools, Vagrant continues to provide HashiCorp with both an effective on-ramp and a level of developer awareness that
HashiCorp continue to develop their products in the open, and occupy a unique position by being opinionated as to the approach they feel companies should use, yet agnostic to the tooling they work with. As the overall industry shift towards microservices and infrastructure as code continues, HashiCorp look to be very well positioned to ride both waves.