OpenStack specialists Mirantis have announced a joint project with Google to integrate the Kubernetes container management system with the OpenStack project, which will allow Docker containers to be deployed at scale on infrastructure managed by OpenStack.
OpenStack is a free and open source cloud operating system that controls large pools of compute, storage, and networking resources. The Mirantis blog states that an OpenStack administrator will be able to deploy a Kubernetes system, which handles orchestration and management of a cluster of Docker containers, within minutes via the OpenStack Murano application catalogue.
Developers can package applications for use as part of a standard container-based deployment workflow, and add them to the Kubernetes cluster running on top of OpenStack. Murano, in combination with other OpenStack components, will add additional infrastructure resources automatically when the application grows to point where the Kubernetes cluster itself needs to scale.
The Mirantis blog states that their implementation of Kubernetes running on OpenStack will provide all of the expected functionality of the Kubernetes platform. This will include Pods (the smallest deployable unit of grouped containers) that implement the Docker service, services that monitor the availability and load of the Pods, and the scaling up or down of Pods based on the Kubernetes configuration. Kubernetes will also coordinates connectivity between the Pods and the underlying infrastructure.
Murano, in combination with the OpenStack Heat orchestration engine, will manage the underlying infrastructure that Kubernetes is deployed onto. Murano will configure the virtual network for Kubernetes and the Pods, and use Heat to provision the resources Kubernetes requires, such as virtual machines and interface connections, network and subnet configs, security groups, router configurations, and storage.
The Google Compute Platform blog notes that as Kubernetes is capable of distributing containers across multiple hosts, Mirantis’ OpenStack integration will provide the ability to move workloads between private deployment of OpenStack and other public clouds, such as Google Cloud Platform:
With Kubernetes powering both your private and public clouds, you’ll be able to unlock the power of a hybrid infrastructure. For example, you might run a primary instance of your application in a private cloud, and then replicate other instances to Google Container Engine in geographies where you don’t have on-premises infrastructure.
The Mirantis blog suggests that although there is often perceived competition between OpenStack and container technology, the integration of Kubernetes with OpenStack may provide additional benefits to end users:
There’s a perceived competition between OpenStack and containers such as Docker, but in reality, the two technologies are a powerful combination. They both solve similar problems, but on different layers of the stack, so combining the two can give users more scalability and automation than ever before.
The Mirantis blog states that the integration with Kubernetes will be publicly released in April via the Mirantis OpenStack Express platform. Early access to a hosted OpenStack sandbox with Kubernetes can be obtained by signing-up at Mirantis online.