Q. What Makes Salt so interesting?
Salt is gaining traction because of a few specific things, primarily the fact that it is a very easy to use system and abstracts a lot of power back to the user. But how Salt works under the hood is what gets people really excited. Salt is, at its core, a remote execution engine, which is very fast and creates a generic interface to manage all of the systems in a cloud. This remote execution engine is built on ZeroMQ and has been optimized for use in a cloud environment. It also creates a system that can scale very well.
This optimized communication bus allows for higher levels of system management to become transparent. While a lot of the excitement about Salt is coming from the applications on top of this communication bus, the real power lies in the communication system.
Salt is also poised to make the best use of available resources within an organization. A new philosophy being pushed into IT departments, is that all IT people need to all be developers, and while there is a lot of merit to be found in a systems admin that can code, I don’t think that a systems admin should be spending their time working on software development, they should be setting up systems and working towards making the cloud faster and stronger. I made Salt with systems admins in mind: it is easy to set up and the configuration management is easy to learn and use. I wanted to make a system that admins could get the most out of, not a system that drained or redirected admins’ energy.
With that said though, Salt is also made for the business and the developers. Beyond the scope of systems administration Salt can take the full power of a programming language for configuration management and extension, and has already been used for many special use cases.
Salt is also made to tailor to the needs of the company using it. Salt can be extended by and the configuration management systems can be used with, many different types of interfaces, making it easy to make Salt address the specific needs of an organization. A great example was a company that was using a deployment process before Salt, and they were pushing out a great deal of configuration values to hosts in the old deployment process. They wanted to still be able to use parts of the old configuration system, and we were able to get Salt to integrate with it in just a few minutes.
In the end, Salt has been made to make the most of the resources a company already has, rather than make a company bend their resources to suit the needs of a tool.
Q. What are the next steps for Salt?
Salt is a very quickly moving project, and it is progressing very well. We are on track to have a 1.0 release in the next few months and are rapidly extending the capabilities of Salt out to more platforms. Beyond that the Salt Stack team is looking at developing many higher level applications on top of the Salt communication system, monitoring and alerting are in the works, as well as integration with systems like Hadoop and Storm. Also the goal of developing a cloud controller is in the works.
Right now Salt Stack, the company I recently created to support Salt, is also looking for funding, the goal is to build out a training program and professional services, there has also been a great deal of interest expressed in the capabilities of Salt outside the data center. Salt will be used to control and manage any type of device, from set top boxes to cars and phones.
Q. Where do you see Salt in a year or two?
In the next 2 years I think that Salt will be able to deliver a new kind of cloud operating system, one that is unified and scale-able. One of the core concepts of Salt is that the remote execution core is the kernel of a cloud operating system, something that does much of what a kernel does for a single system but across many systems.
For many years now the goal of my spare time and research has been to find the best way to unify operations across large groups of systems, make them cohesive, and work together cleanly. I think that Salt it the manifestation of this goal, a system that can unify the behavior of many systems into a central management environment.
There is of course a very long road ahead, but I intend to see it out, we have already made huge strides and I am very excited about the path Salt is taking.