The trickle of newly minted third-party outfits looking to get the most out of Docker has become a full-blown flood.
StackEngine joins the deluge, flush with $1 million in seed funding and armed with a plan to make Docker more useful to ops teams -- a side of IT that it believes has neglected.
StackEngine describes its eponymous product as "helping operations teams bootstrap Docker into production, and discover, visualize, and manage small- to large-scale Docker deployments, and intelligently automate change and configuration management for containers."
The company claims that as revolutionary as Docker has been for the dev side of devops, it's been less so for ops. Because of Docker's relative newness, most of the tools used for IT automation aren't as container-aware or container-friendly as they could be. "Tools like Chef and Puppet were built to automate systems, not containers, and are too complex and low level to solve these new problems," says StackEngine's press release.
Bob Quillin, CEO and co-founder of StackEngine, explained in a phone call how the "land rush around Docker" has created a "bottleneck" for operations teams, due to a lack of Docker tools built for them. Systems like VMware, he explained, offer ops the monitoring and management tools they need.
"That's the opportunity we see," he said, "to help the operations guys take what the dev guys are doing out to production, and really automate that process."
One reason why management tools for systems don't work as well with containers, Quillin stated, is because "containers take their configuration dependencies with them. The kinds of changes Puppet and Chef deal with don't really address the container world."
To that end, StackEngine aims to provide tooling that allows container visualization -- to determine what is running and where, and do it at scale. "When you have five or 10 containers in a dev or test environment, that's pretty easy [to manage]," Quillin said. "When you start getting into production, the ops guys want to know what versions are running, where they're running, what resources are required to run this particular container." Classic automation and devops tools have been able to do so with VMs for some time, he said, but not for containers.
The StackEngine product consists of a "management mesh," according to Quillin, which provides discovery and visibility for containers across an organization. "As containers come up and down, when they're running, stopped, or paused, we do total visibility in a distributed way across all your container environments."
This visibility, he explained, includes the containers and the hosts they run on -- whether a VM, bare metal, or an Amazon EC2 instance -- as well as the dependencies between the containers and their respective hosts, such as whether more memory is needed. Also, it helps find "rogue and zombie containers" -- containers running older or unsupervised instances of software that have been overlooked, in Quillin's description.
The resulting product -- itself deployed as a Docker container -- will be a mix of open source and commercial software. A free version, designed to get users up and running, is aimed at a developer audience; the more professional, for-pay version increases in cost depending on the scale of deployment.
Quillin noted that existing projects like Kubernetes provide some of the individual pieces for such a solution. StackEngine's intention is to integrate with those as needed, to honor existing tools (Puppet, Chef, and so on) and emerging standards like libcontainer, and to provide a full solution that can be used on its own immediately.
Could StackEngine's open source work eventually become part of Docker itself? Quillin remarked that "the most basic, plumbing elements [could] get integrated back into Docker," but StackEngine's overall job is "to stay one step ahead of that level of adoption," and provide value as far up the stack as possible.
Because Docker is young and still evolving, Docker and the automation ecosystem -- the aforementioned Chef and Puppet -- can certainly move with the times and become more adept at managing containers at scale. Puppet in particular has recently undergone a major reworking, presaging possible changes, and Docker's next step is likely to be eye-opening.