OpenStack or Kubernetes? Better together! (II)

OpenStack or Kubernetes? Better together! (II)

Overall Solution

When it comes to propose a solution, transfer, management, maturity, and system performance will become the significant key-point. This is also the core value of the coexistence of OpenStack and Kubernetes.


At first, the provided environments are bare metal, virtual machine, or container. These three types all have the chance that they cannot be transferred to each other. Or, the transferring process will cost a lot of time and human resource. Under this condition, a complete solution will be necessary. Since not all the users have the resource to perform destructive construction, the success rate of transferring will not be the key-point for users, but for the survival of the platform. Under the premise, the transferring ability resulted from the combination of OpenStack and Kubernetes can benefit most construction cases. In most environments, it can be transferred perfectly to OpenStack; then, the required container service can run on Kubernetes based on the internal requirements and the evaluation of three environments.


How friendly and wide users can operate for managing are key-points that users truly care about. The operating conception will be different compared to the original environment. How to manage the environment efficiently is always a key topic. To deal with this, OpenStack already has the ability to construct and mange platforms on Kubernetes; while Kubernetes also has the ability to construct and mange platforms on OpenStack. With this mutual management, it can save lots of load on management.

System Performance

Before the system going online, we need to check if the system can reach the planned performance. This is system planning when it talks to system architecture, for example, the three environments (bare metal, virtual machine, and container) mentioned above. In addition, it needs to be able to handle both physical and virtual resources (software-defined resource.) For container, users can partition resources, i.e., networks and storage, under Kubernetes via software-defined approaches. They can also manage the communication ability between each resource. For bare metal and virtual machine OpenStack provides QoS service which includes comprehensive Config environment. This makes the environment tuning more flexible. We can easily switch and tune on both bare metal and virtual machine based on the performance and resource we need. This is one of the main advantages of the combination of OpenStack and Kubernetes.


The product life cycle is decided by its maturity. Considering the mature development of OpenStack, users will take how easy can the environment be integrated and the future of the platform into account when choosing their cloud platform. For now, under the No-vendor-lock-in architecture in OpenStack, we do not need to worry about being hijacked by any software or hardware companies. This characteristic is also shown in Kubernetes. Then, the developing stability will be taken into consideration. Both two communities have the leading developing ability (compared to most open source platform) nowadays. The testing environment provided by OpenStack community promises the fundamental usage and developing ability can pass Linux Foundation Core Infrastructure Initiative (Most security) certification with almost 100%. This means it already has a sufficient capability.

Biggest Use Case

Take a famous academic case CERN in OpenStack for example, it is an integration case of OpenStack and Kubernetes. CERN exposes officially that it integrates Kubernetes, Swarm, and Mesos via OpenStack Magnum during the OpenStack Summit. It now owns an operating environment with more than two-thousand users (Source: Superuser.) In the environment, there are more than a thousand and two hundred OpenStack nodes and twenty-thousand virtual machines. An engineer says that the scale is far more for now. Under this premise, the difficulties when adding Magnum in to OpenStack environment via Puppet is how to install the necessary Magnum plugins into existing system without severe influences. Magnum can handle the rest Kubernetes services. Thus, multiple Kubernetes cluster can be constructed after installing Magnum. Also, the service that has been running on Docker inside CERN can be directly transferred to Kubernetes or other COEs. For other services, they can choose a suitable environment to be running on based on other transferring plans.


This article simply introduces the existing case, architecture integration, and other consideration about transferring. For enterprise-level service, the combination of two platforms is more promising in the future. The developing and investing power on both two platforms cannot be overestimated. A professional planning can help users transfer the successful cases into their own real case. Now talks to the open cloud platform, compared to the existing virtual platform, the savings from hardware and authorization can be use to train our own cloud managing team. This makes the open cloud platform has the ability to escape Vendor-lock-in issues. No matter what OpenStack, Kubernetes, or even the combination of them, we are looking forward for more user cases to make it into a promising developing cycle. We are exciting about the perfect integration prospect in the future.

By: 林冠宇


Select list(s)*