Over the last few years, Docker has relied on their own container management system to not only form the roadmap of their company, but also attract high dollar investors. But this all changed as the company announced their support of Kubernetes at DockerCon Europe 2017 in Copenhagen. With Docker being the leading platform for software containerization, this announcement shows just how valuable Kubernetes are in the container orchestration space.
Docker has always focused on the developer, offering the ability to use a standard framework to build, ship and run applications. Their primary platform to orchestrate containers is Docker Swarm., which also offers a close integration with Docker Enterprise Edition. With the integration of Kubernetes, Swarm offers value-added capabilities above Kubernetes.
Organizations will now be able to make use of Kubernetes, while still relying on Docker’s various management features, including security scanning. In addition to Windows and Linux, the system will also be compatible with a variety of Docker-certified container images.
Docker and Kubernetes have been competing against each other since 2015, making this move even more genius. In 2016, Docker partnered with Microsoft and brought its container runtime to the Azure cloud platform, gaining a lot of Windows platform support.
So, Why Kubernetes?
Kubernetes, also referred to as k8s, was originally developed by Google, and is now hosted by the Cloud Native Computing Foundation (CNCF). It’s an open source platform that aims to enhance cloud native technology development by using a new set of container technologies. With Kubernetes, you can deploy and schedule container applications in both virtual and physical environments, making it a leading container orchestration engine.
“We’re embracing Kubernetes into our product line. We’re bringing Kubernetes into Docker Enterprise Edition as a first-class orchestrator right alongside Docker Swarm,” said Scott Johnston, Chief Operating Officer of Docker. He also mentioned that they will be integrating Kubernetes into their Mac and Windows products. Steve Singh, Chief Executive Officer of Docker, believes that embracing Kubernetes will rule out potential conflicts, and that they want customers to have a choice between using Swarm or Kubernetes, or both. “Our hope is that every application company in the world builds and delivers their products on the Docker platform in Docker containers,” Singh said.
But Kubernetes offer far more; it has many capabilities specifically for orchestration, including load balancing, service discovery and horizontal scaling. It also gives organizations the ability to have a flexible platform to execute their workloads in the cloud, or on-site, without the need for any application layer changes. Kubernetes also has a very large developer community, making it one of the fastest growing open source projects in the world.
Container Technology is Growing
Container technology is growing rapidly every year, with the market expecting to grow around 40 percent every year, to an impressive $2.7 billion by 2020. Experts believe that a big factor in this growth potential is the fact that organizations are incorporating containers specifically due to their portability, which reduces costs and offers better infrastructure utilization.
Kubernetes are fast becoming the central container orchestration engine for various leading cloud providers such as IBM, Google, Pivotal, Oracle, Microsoft, and Red Hat. Most industry leaders in Platform-as-a-service (PaaS) and Infrastructure-as-a-Service (IaaS) have also joined CNCF, making Kubernetes part of their service offering.
Going forward, every six months Kubernetes will be updated, beginning with version 1.8 that is included in Docker’s Enterprise Edition. For desktop users who often use Docker, the Windows and Mac versions will be taken directly from the master, ensuring that features are always developed in a timely manner without any complications.
It’s also interesting to note that Solomon Hykes, one of the founding members of Docker, is also on the technical committee of the CNCF, the group that manages containerd, Linkerd, and Kubernetes, along with a few other popular container-focused projects. Hykes is a founding member and has been contributing to various CNCF projects.
“We’re already active. With this announcement, that’s going to continue and accelerate. We intend to be first class citizens and participate as full class members,” said Johnston.
Johnston also noted that they are working with a security team that was acquired from Square a few years ago, and they are handling most of the security work for Docker Enterprise Edition. The team constantly improves the overall security of the platform, and will continue to do so.
Swarm and Kubernetes: Side by Side
Docker decided to provide a design that allows for the simultaneous running of Swarm and Kubernetes in the same cluster. When Swarm is deployed, an option is provided to also install Kubernetes, which will then take on the redundancy design of the Swarm install.
Hykes said that developers who use Docker won’t have to learn new tools for Kubernetes. Rather, complete Kubernetes distribution will be built-in with the next version of Docker, allowing developers to use the same tools they have always used.
“You can just keep developing and it just works, and if you do want to use Kubernetes tools, Docker is a good distribution, so you get the best of all worlds,” Hykes said.
When looking at resources, it might be challenging as both Swarm and Kubernetes can run on one host, each being unaware of the other. This means that each orchestrator will adapt complete use of a single host, which is why Docker does not recommend that both be run on the same host.
With Kubernetes now being the modern standard for container orchestration, Docker made the perfect decision to support Kubernetes. Instead of competing, it is embracing the technology and offering their clients exactly what they want – developer tools that are easy to work with.
This is definitely a very important moment for the container ecosystem, as Docker remains a leader when it comes to container-based development. With availability expected Q1 2018, and integration of Kubernetes with Docker EE, Docker is not only a leading development platform, but also serves as a production-level platform that can compete with PaaS solutions.