The Blog

Mastering containers with OpenStack: a white paper

Relevant links are at the bottom of this post.

Suddenly, everyone is getting their head around containers.

One recent survey projects that 69 percent of companies will embrace them in the next year for production environments.

To better understand why containers are gaining so much mindshare, OpenStack just published a paper you can download titled “Exploring Opportunities: Containers and OpenStack.”

With insight contributed from experts at Mirantis, Rackspace and Cisco, the 18-page .PDF details the value of container use within an OpenStack infrastructure and provides an overview of how to build a container-hosting environment with OpenStack Nova, the OpenStack Compute project, as well as use cases for containers today and tomorrow.

Take Lithium Technologies, for example. They power social-platforms-as-a-service for over 400 companies — including Google, AT&T and Sephora — running on an OpenStack private cloud. The paper outlines how they are transitioning to a sleeker, container-based model, using Docker and Kubernetes container orchestration and clustering.
Containers haven’t gained this new ground without sparking controversy, however, leading some to question how containers will impact the need for OpenStack. Those taking the long view argue that containers will peacefully coexist with OpenStack as savvy firms create a hybrid environment with a mix of different technologies.

This enthusiasm, in part, led to a whole day blocked out for containers at the OpenStack Summit in Vancouver this past May. OpenStack Foundation COO Mark Collier talked a lot about containers in his keynote at the event, in which he explained that just as OpenStack excels in helping enterprises manage their VM deployments and virtualize their data centers, it’s just as set to do the same thing with container technologies.

“The important thing for us as a community is to think about OpenStack as an integration engine that’s agnostic,” Collier said. “That puts users in the best position for success. Just as we didn’t reinvent the wheel when it comes to computing, storing, and networking, we’ll do the same with containers.”

For the uninitiated, here are the basics: containers are portable and isolated environments that make it possible for developers to package applications with all the dependencies and libraries they require. While containers are cousins to virtual machines, there are important differences. For instance, containers share a number of resources with virtual machines, such as the OS kernel. They differ, though, in how they keep applications and other services separated.


OpenStack container-as-a-service support architecture, from the white paper.

If you want to understand how OpenStack can help you power container efforts at your company, this new paper provides a thorough look into container management with OpenStack, as well as a peek into the various container-related services that are being built as first-class resources in current and upcoming OpenStack releases.

Here are the most compelling reasons to adopt containers today, according to the authors of the paper:

  • To obtain deterministic software packaging that would fit nicely with an immutable infrastructure model.
  • To encapsulate microservices.
  • To enable portability of containers on top of OpenStack virtual machines as well as bare-metal servers ([Ironic]( using a single, lightweight image.

Last year, the OpenStack community decided that OpenStack was going to support containers and third-party container orchestrators such as Docker Swarm, Kubernetes and Mesos. OpenStack describes these technologies as Container Orchestration Engines (COEs), and all three of these COE systems are supported in the OpenStack Magnum containers service.

Today, OpenStack supports Linux Containers (LXC) and Virtuozzo system containers. Docker application containers and Docker Swarm, Kubernetes, and Mesos container orchestration are available with the Liberty release of [Magnum.] The paper also details what users can expect to see regarding containers and container management in the near future and details the continuous evolution toward full-fledged OpenStack container support in the near future.

And for those getting ready to do so, the paper provides highlights on how to build a container-hosting environment with OpenStack Compute.

Just as organizations needed a way to manage virtual machines and virtual machine sprawl, the same is true for containers – and many today are realizing that OpenStack is a viable option to provide the additional agility they need within their current architecture by using containers without having to create a separate container-specific infrastructure.