From Silos to Services: Cloud Computing for the Enterprise

May 31 2019   8:07PM GMT

Is Kubernetes the new OpenStack?

Brian Gracely Brian Gracely Profile: Brian Gracely


This past week at the CNCF’s KubeCon event in Barcelona, the attendance was 7700+ attendees, the most in the event’s history. Based on the open source Kubernetes project, which celebrated it’s 5th anniversary, many thought leaders have begun to identify it as the operating system of the cloud.

Back up just a few years (2016), and the OpenStack Summit in Austin, TX saw over 7000+ attendees, the most in its history. Built on the open source OpenStack projects, it was also celebrating it’s 5th anniversary, and for several years, pundits were asking if OpenStack was the Linux of the cloud?

At a high level, given those basic similarities, it wasn’t unexpected for many people observing KubeCon to ask, “Is Kubernetes the new OpenStack?”.

Before giving a response to that question, let’s establish some basics about both projects.

  1. Timing is everything in technology. Trying to compare two different pieces of technology or open source projects, without considering the context of timing (and all the elements around it at the time), is a great way to create false equivalencies or just just poor analysis.
  2. Decisions can only be made with the available information at hand, or using some historical learnings. 20/20 hindsight is not part of the decision-making process.
  3. Open governance is difficult. Not all governance is created and operated “equally”.
  4. Vision and direction is difficult. Getting a broad community to generally agree on direction, given many (many, many) alternative motivations is very difficult.

Let’s also establish one more basic – both of these projects have achieved a level of success, and both continue to grow. This isn’t the typical (useless) technology discussion where all comparisons are binary – if A lives then B dies. Neither project is dependent on the other, and both will find their path to success or failure independently.

Setting some context – Original creation

OpenStack was created (2010) to establish an open source alternative to existing proprietary IaaS platforms (namely: AWS and VMware vSphere). At the time, its focus was a VM-centric context. Linux containers and Docker weren’t part of the conversation. AWS was not yet a $1B business, Azure has just launched and Google Cloud didn’t exist (except for AppEngine). Enterprise customers still weren’t sure that public cloud would be wildly successful, and cloud portability wasn’t part of the discussion yet. And it’s initial community was a bunch of vendors that didn’t necessarily have much background in open source communities and governance.

Kubernetes was created (2014) to establish an open source orchestrator for Linux containers, which could become the basis of a platform that run cloud-native applications. It’s competition at the time was Apache Mesos/Marathon, Docker’s Swarm, and a bunch of homegrown orchestrators from various vendors (Cloud Foundry, dotCloud, OpenShift, etc.). It benefited at the time from the massive interest growing around docker containers. AWS, Azure, GCP and others had established themselves as viable public clouds, and Enterprise customers were beginning to focus on cloud portability, multi-cloud deployments, and how to build teams that could more rapidly build new applications.

Apologies for the history lesson, but I always find it helpful to set some historical context when comparing things, or trying to understand how we’ve gotten to where we are today.

Lessons Learned

This might be controversial, but I’m of the opinion that Kubernetes might not have achieved the success it did without the learnings that came from decisions that OpenStack made. Let’s look at some of those decisions.

  • Governance: It took a while before OpenStack had an open governance model, and even after it was established, it was well known that certain entities had no yet given up control to the governance body.
  • Focus: Internally, OpenStack initially struggled between the replace-AWS factions and the replace-VMware factions. Given the massive difference between those two problem spaces, it pulled the projects in very different directions, ultimately preventing OpenStack from displacing either one.
  • The Big Tent Theory: As more companies (mostly vendors) got onboard with OpenStack, the more the scope expanded into new projects. It got into PaaS and Big Data. All of these projects created many dependencies, which made it difficult to deploy and update OpenStack.

Over time, OpenStack solved all of these challenges, by moving to more transparent governance, by shifting the majority of the focus towards Telco/NFV use-cases, and by moving away from the big tent architecture. This is where OpenStack has gained the greater amount of traction in the market.

In contrast, the Kubernetes community learned from those early OpenStack choices. The CNCF was announced and funded at the time when Kubernetes was launched as an open source project. Google actively recruited companies like Red Hat and CoreOS to help grow the community and bring in ideas from outside the Google purview.

The focus of Kubernetes is around Cloud-native application development. This was not a replace-xyz focus, but rather an additive focus towards new applications and new use-cases.

Finally, Kubernetes avoided the big tent model, instead focusing on a smaller, more stable Kubernetes core, and then allowing other projects to independently grow around Kubernetes. This includes projects like Prometheus, CNI, CSI, CRI, Knative, Istio, KubeVirt and many others.

All of these things don’t necessarily mean that the Kubernetes community won’t have challenges or make mistakes in the future. Lots can happen in a highly competitive market. The good news for Kubernetes is that it has attracted a large number of companies using Kubernetes in production, so the amount of real-world feedback into the community is very high, which hopefully keeps the community focused on solving real problems, not just creating science-project projects.

 Comment on this Post

There was an error processing your information. Please try again later.
Thanks. We'll let you know when a new response is added.
Send me notifications when other members comment.

Forgot Password

No problem! Submit your e-mail address below. We'll send you an e-mail containing your password.

Your password has been sent to:

Share this item with your network: