The ongoing effort to make OpenStack easier to deploy and maintain has received an assist from an unexpected source: CoreOS and its new Stackanetes project, announced today at the OpenStack Summit in Austin.
Containers are generally seen as a lighter-weight solution to many of the problems addressed by OpenStack. But CoreOS sees Stackanetes as a vehicle to deliver OpenStack's benefits -- an open source IaaS with access to raw VMs -- via Kubernetes and its management methodology.
OpenStack in Kubernetes
Kubernetes, originally created by Google, manages containerized applications across a cluster. Its emphasis is on keeping apps healthy and responsive with a minimal amount of management. Stackanetes uses Kubernetes to deploy OpenStack as a set of containerized applications, one container for each service.
The single biggest benefit, according to CoreOS, is "radically simplified management of OpenStack components," a common goal of most recent OpenStack initiatives.
But Stackanetes is also a "single platform for consistently managing both IaaS and container workloads." OpenStack has its own container management service, Magnum, used mainly as an interface to run Docker and, yes, Kubernetes instances within OpenStack. Stackanetes stands this on its head, and OpenStack becomes another containerized application running alongside all the rest in a cluster.
Easy management = admin appeal
Other projects that deploy OpenStack as a containerized service have popped up but have taken a different approach. Kolla, an OpenStack "big tent" project, uses Docker containers and Ansible playbooks to deploy an OpenStack configuration. The basic deployment is "highly opinionated," meaning it comes heavily preconfigured but can be customized after deployment.
Stackanetes is mostly concerned with making sure individual services within OpenStack remain running -- what CoreOS describes as the self-healing capacity. It's less concerned with under-the-hood configurations of individual OpenStack components -- which OpenStack has been trying to make less painful.
One long-standing OpenStack issue that Stackanetes does try to address is upgrades to individual OpenStack components. In a demo video, CoreOS CEO Alex Polvi showed how Stackanetes could shift workloads from nodes running an older version of the Horizon service to nodes running a newer version. The whole process involved only a couple of clicks.
With Stackanetes, CoreOS is betting more people would rather use Kubernetes as a deployment and management mechanism for containers than OpenStack. At the least, Kubernetes gives admins a straightforward way to stand up and manage the pieces of an OpenStack cluster -- and that, by itself, has admin appeal.