This article does a great job of summarizing how containers, and more importantly Kubernetes, have become the “new base unit of compute” for OS-driven workloads – replacing over a decade of VM-based computing solutions. After reading it, take some time to reflect on how nearly every major IT services and platform company, including the public cloud hyperscale leaders, offer a robust and growing Kubernetes (k8s) solution. Amazing when you consider that these solutions weren’t even on the map three years ago. Businesses of every size and level of cloud maturity that are building a modern hybrid strategy should realize that Kubernetes is a required piece of that puzzle.
However, there are a few more considerations when exploring a holistic, modern hybrid cloud strategy. The first would be not over-indexing towards the author’s mention of new standardization efforts like the containerd project. Containers, especially Docker, have become the new normal for these workloads, but as with any tech revolution, a lot of bodies are trying to define “the best way” to do this for the enterprise. The Kubernetes project has excelled by successfully balancing the need to be opinionated to add technical value, while also allowing room for customization and extension. As this trend continues, we expect solutions that focus on “core” Kubernetes (the core open source project and repos managed by CNCF) to be successful, while other solutions from industry vendors, or even governing bodies, promising the “enterprise way” or new standards on top of k8s to dissolve during nascency.
The second point to consider is that modern hybrid solutions must be holistic in nature. Cloud native computing today is more than just OS-centric applications. Rapid innovation in AI and machine learning have brought these technologies to the masses, and event-driven “serverless” or function-as-a-service platforms have enabled a completely new paradigm for developing software. Additional frontiers in edge computing, on-prem public cloud (AWS Outposts and Azure Stack) and 5G mobile broadband are all enabling businesses of any size to solve the most complex problems in truly innovative ways. A successful hybrid strategy in 2020 and beyond will require all of these toolsets – in addition to Kubernetes – deployed to serve the use cases to which they are designed and avoiding the “one size fits all” approach that defined similar strategies only a few years ago.
Since the time the public cloud has become prominent, there have been multiple attempts to bring parity between on-premises infrastructure and cloud infrastructure.
Due to the disparity between the hypervisors and the virtual machine managers running in on-premises and the cloud, workload portability was never easy. Cloud bursting, the ability to effortlessly scale the infrastructure and applications to the cloud remained a pipedream of infrastructure architects.
Since 2015, two major trends started to change the face of the hybrid cloud – containers and Kubernetes.
The container runtime became the lowest common denominator to run workloads across physical machines, private cloud and the public cloud. Container images have become the preferred deployment units of software. In a lot of ways, Docker and container runtimes became an alternative to hypervisors. A containerized application developed on macOS could be easily deployed in Amazon EC2, Google Compute Engine or Azure VMs with absolutely no changes to the code and configuration.
If Docker is the new hypervisor, Kubernetes became the replacement for proprietary virtual machine managers. With containers as the deployment unit and Kubernetes as the orchestration manager, the industry finally agreed on a standard infrastructure layer.
Red Hat, VMware, Canonical, Mirantis, Rancher and other vendors offer Kubernetes-based platforms that can run in both enterprise data centers and the public cloud. The rise of Kubernetes forced hyperscale cloud vendors such as Alibaba, AWS, IBM, Google, Huawei, Microsoft and Oracle to offer managed Kubernetes services.
The Cloud Native Computing Foundation, the governance body that manages Kubernetes, played a key role in making sure that the commercial implementations conform to a standard. The Certified Kubernetes Conformance Program ensures that every vendor’s version of Kubernetes supports the required APIs, as do open source community versions. For organizations using Kubernetes, conformance enables interoperability from one Kubernetes installation to the next. It allows them the flexibility to choose between vendors.
CNCF also manages the containerd project, the standard that defines the container runtimes. As long as the container runtime adheres to the containerd specification, Kubernetes can orchestrate the workloads. The combination of containerd and Kubernetes has become the foundation of modern infrastructure.
Thanks to the standardization efforts and the conformance program, a developer developing and testing containerized software on his desktop can confidently deploy it in a production environment running Kubernetes. This guaranteed compatibility of Kubernetes across different environments and distributions resulted in the rapid adoption across startups, mid-sized companies, and large enterprises.
With container runtime and Kubernetes becoming the gold standard of modern infrastructure, the original promise of the hybrid cloud is no more a distant dream.
This year, we have seen the launch of Kubernetes-based hybrid cloud platforms from almost all the major infrastructure vendors. These new offerings not only manage clusters running on-premises and in their own cloud platforms but any Kubernetes cluster including those that are deployed in other cloud environments.
IBM took the plunge by announcing IBM Cloud Paks (formerly IBM Cloud Private) followed by Google which launched Anthos at Cloud NEXT 2019 event. At VMworld 2019, VMware announced Project Pacific and Tanzu Mission Control – a platform that brings the best of Kubernetes and vSphere. More recently, Microsoft launched Azure Arc that can manage Azure’s own hosted Kubernetes services, AKS along with Kubernetes clusters running outside of Azure.
What’s common in these platforms is that Kubernetes is at the front and center of its hybrid strategy. Thanks to Kubernetes, these hybrid cloud platforms not only enable workload portability but also deliver the ability to scale the workloads across disparate environments.
Going forward, Kubernetes will become the universal control plane that can manage containers, virtual machines, legacy workloads, and modern applications.