[openstack-dev] [kolla][kubernetes] Mirantis participation in kolla-mesos project and shift towards Kubernetes
slukjanov at mirantis.com
Fri Apr 22 18:17:48 UTC 2016
I’ve been approached by multiple people asking questions about what is
happening with Mirantis engineers activity around the kolla-mesos project
we started and I do feel that I owe an explanation to the community.
Indeed during the last few months we significantly reduced the amount of
contribution. Jumping straight to the point, I would like to say right away
that we will have to abandon the kolla-mesos initiative. If anybody would
like to pick it up and continue moving forward, Mirantis will do everything
we can to help with the ownership transition including sharing what we
learned along the way.
Now please let me explain the reasons behind this decision which I hope
will turn into an active discussion in the OpenStack community. When we
started work on the containerization of OpenStack we did not have a clear
picture of the design choices and decisions that would need to be made.
What we knew there is a community project around the effort - Kolla, and we
decided to try and explore the opportunity to join these efforts.
First let me express my gratitude towards the Kolla community for their
willingness to help and support our efforts. The way the Kolla project
accepted and helped new people join the project is one of the fundamental
behaviours that makes me really proud to be a part of the OpenStack
During the journey working in Kolla, we discovered that there are quite a
few fundamental mismatches between where we believe we need to arrive
running OpenStack containers inside orchestration framework like Mesos and
Kubernetes and the Kolla direction of running containers using Ansible.
While there is nothing wrong with either approach, there are some technical
difficulties which lead to conflicting requirements, for example:
* Containers definition should be easy readable and maintainable, it should
provide meta information such as list of the packages to be installed in
the container, etc (container image building DSL is one of the options to
* It should be possible to implement containers layering, naming and
versioning in a way to support upgradability and patching, especially in
terms of shipping security updates and upgrades to the users;
* Containers implementation should be clear from the bootstrap and init
* Repository per OpenStack and Infra component, e.g. one from nova, one for
neutron and etc. - to contain all needed container images for running
corresponding services in different topologies;
* It should be possible to use other containers, not just docker, for
example - rkt.
Since we believed Kolla would likely have to change direction to support
what we needed but we still were not sure in the exact technical direction
needed to take, Mirantis decided to take a pause to prevent unnecessary
churn to project and run a number of research initiative to experiment with
While the above work was happening, Mirantis was also tracking how the
Kubernetes project and community were developing. We were very glad to see
significant progress made over a short period of time and community
momentum build similar to how OpenStack grew in the early days. As part of
our exploration activities we decided to give Kubernetes a try to see if we
could make containerized OpenStack work on Kubernetes and better understand
what changes to OpenStack itself would be needed to best support this
At this point I’m glad to announce that I was able to do a very simple PoC
(~1.5 weeks) with the core OpenStack control plane services running on top
of Kubernetes. I’ve recorded a demo showing how it’s working .
Based on our research activities and rapid growth of the Kubernetes
community, which shares many parallels to the OpenStack community, we are
switching our efforts to focus on running OpenStack on Kubernetes. We are
going to do the development work upstream and as part of that share and
contribute results of prototyping and research work we have done so far.
We are considering multiple options on what is the right place in community
for this work to happen: re-join the work with the Kolla project, start a
new project or explore whether it would fit into one of OpenStack
deployment projects, like Fuel.
I’m going to have a conversation with Kolla and Fuel teams during the
summit and will keep the community posted on the progress.
P.S. Kudos to Sergey Reshetnyak and other folks for helping me preparing
Principal Software Engineer
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the OpenStack-dev