Five years ago, OpenStack was the new cool kid on the block. Its mission was to become the ubiquitous open source cloud computing platform for all. But recently, some new cool kids—like Docker, Kubernetes, and Mesos—started appearing. We all say our products are complementary, but we are all selling similar value propositions. Mesos is an operating system for the data center. Kubernetes is a platform for cloud native applications. Docker is a platform for distributed applications. So, which is it? Do we compete or do we complement one another?
To build a data center operating system (DCOS), you need to solve a lot of hard problems. At the top of the stack, these problems are things like like workload portability, application monitoring and autoscaling, application policy management. At the bottom of the stack, there are things like scaling SDN, resource scheduling for distributed systems, controlling heterogeneous infrastructure pools and writing drivers to support the wide variety of hardware sitting in customer data centers today.
The cool new DCOS startups claim to have solved all of these problems, but in reality each of them has only solved one very acute problem, and their statements about DCOS are directional. For example, Docker brought containers to the mainstream, and they have solved the very acute problem of workload portability. They are moving in the direction of DCOS by building a solution around that standard that includes Swarm, which is basically a Docker cluster manager (similar to Kubernetes). Mesosphere solved the hard problem of hyperscale resource scheduling. They are moving in the direction of DCOS with Marathon as a native cluster manager (again, similar to Kubernetes).
Meanwhile, while we all tackle specific problems, Amazon Web Services has the largest market share, and the future cloud computing is looking like it could go the way of the power industry: an oligopoly of three to five vendors operating a massive array of homogeneous computer farms. Innovation would be lost.
I would prefer to work in a vibrant, open source ecosystem. How do we make this vision of the world happen?
The Open Source Way
Why is the open source way a better approach to the future of the cloud? When we think about open source, the first thing that comes to mind is Linux. Linux succeeded because it had a benevolent dictator with an impactful vision. It was driven by Linus Torvalds, who believes that the not-invented-here (NIH) attitude — where individuals and companies refuse to use products (in this case software) they didn’t create themselves — is a disease.
At Mirantis, we’re behind OpenStack. We want to be the winners, and we want OpenStack to succeed. The reason I believe in OpenStack is that it is much larger than its original mission. OpenStack is about building an open community of cloud infrastructure experts and consumers, united by a mission to eliminate the NIH syndrome. Unlike many other communities, OpenStack is very good at embracing the most elegant solution to a particular problem and gluing it with other solutions to make up the optimal “whole,” instead of re-inventing the wheel every time.
Whenever new ideas are proposed on the mailing list, the first response of the community is to point all the other places in the open source ecosystem where these ideas have already been implemented. This momentum and approach is invaluable to build the best possible open cloud for the future.
My appeal is for everyone — be it OpenStack, Docker, Mesos, Kubernetes, or any other new "cool kid" to come along — to embrace this notion of eliminating NIH syndrome. Instead of trying to conquer the world on our own, we should all come together and find a way to build the best possible open cloud. We can be then become the collective “winner” that delivers the unlocked, open data center infrastructure.
This post originally appeared in the Superuser magazine that was distributed at the OpenStack Summit Tokyo, and Renksi also spoke more in depth about this topic at OpenStack Silicon Valley last August.