August 18, 2017

Is Kubernetes the best orchestration tool? Red Hat thinks so. Here’s what Brian Gracely, Red Hat’s director of Product Strategy, had to say in a recent interview about its features and performance.

As you probably know if you follow the container ecosystem regularly, Kubernetes is one of several orchestration tools for containerized infrastructure. Other popular options include Docker Swarm and Apache Mesos, but the list could go on. All of these tools are designed to automate the process of provisioning and managing containerized applications running on Docker.

Why Kubernetes?

Since the container ecosystem is mostly open source, users are usually free to choose whichever orchestration tool they want when setting up a Docker stack. But Red Hat is keen to promote Kubernetes, which it plays a large role in developing. According to Gracely, who spoke to me about the tool in mid-November, the tool’s main selling points include the following:

  • The Kubernetes community is “meritocratic,” Gracely said. In this regard he was distinguishing it from Swarm, Mesos, CloudFoundry and other alternatives, which he regards as “vendor-driven” projects. That logic makes sense at least in the case of tools like Swarm, which, although open source, is tightly integrated with the rest of Docker’s stack.
  • It can support a large number of applications. This has been a talking point for the Kubernetes community since the spring, when it announced the tool could run more than 1,000 nodes.
  • It is a “one-tier container application system,” according to Gracely. By that, he means that any Linux application can be containerized and run directly on Kubernetes. That’s a contrast to certain other orchestrators, such as Mesos, which can support Docker but were not designed specifically for Docker, and require a two-tier architecture for hosting containers. (On the other hand, orchestrators such as Swarm are just as Docker-native.)
  • It does not “force you to compromise,” according to Gracely. He said this makes it different from, say, CloudFoundry, which requires applications to be “aligned with all of the opinions that that platform expects of it” in areas such as root file access, security and the location of persistent data.

Kubernetes Performance

I also asked Gracely about the tool’s performance. That has been a hot topic since Docker in March commissioned a study that reported major performance advantages for Swarm as compared to Kubernetes.

Gracely did not dispute the findings of that report. But he noted that it focused mostly on container startup time, rather than application performance once containers are running. And he said customers are much more interested in the latter than the former.

To make the point that it is designed for better performance of running applications, Gracely said, “Kubernetes was built from day one on operational experience. The messaging setup between Kubernetes controllers and nodes is built to be more reliable and aware of things like faults in the environment and splits and so forth. Where [Docker Swarm] was seeing better performance, it was in terms of setup time,” not application performance, according to Gracely.

So, is Kubernetes the best orchestration tool out there? That surely depends on who you ask. But it’s clear that Red Hat is not budging in its commitment to Kubernetes, which it hopes will beat out Swarm, Mesos, CloudFoundry and all the other competitors to become the container orchestration solution of choice.

Christopher Tozzi

Christopher Tozzi has covered technology and business news for nearly a decade, specializing in open source, containers, big data, networking and security. He is currently Senior Editor and DevOps Analyst with Fixate.io and Sweetcode.io.