Kubernetes celebrates its sixth birthday on June 7: One of the fastest-growing open source projects ever, it’s driving significant change in enterprise IT, helping developers manage containers at scale. Moreover, it helps them develop applications faster and manage resources in automated ways. That’s important not only in DevOps and agile environments, but also in any enterprise IT environment pushing for faster software development and more experimentation. And any CIO or IT leader will tell you, the CEO’s biggest wish right now is faster response to customer needs and outside changes - most recently, a global pandemic.
How much Kubernetes growth are we talking about? According to the CNCF Cloud Native Survey for 2019, 78 percent of respondents were using Kubernetes in production, up from 58 percent the previous year.
Here’s what’s driving that interest in Kubernetes in enterprise IT: You need it when the number of containerized applications starts to rise. And 56 percent of enterprises say they’ll increase use of containerized applications during the next 12 months, according to the 2020 Red Hat Enterprise Open Source Report. Gartner predicts that by 2023, more than 70 percent of global organizations will be running more than two containerized applications in production, up from less than 20 percent in 2019.
[ Kubernetes 101: An introduction to containers, Kubernetes and OpenShift: Watch the on-demand Kubernetes 101 webinar.]
So, on this sixth birthday, what do you know about Kubernetes? Can you explain Kubernetes in plain English to a customer or partner? Do you know how teams can get started using Kubernetes with the open source tool Minikube and a laptop?
The state of Kubernetes 2020: 6 facts
Let’s dig into six facts you might not know about the current state of Kubernetes:
1. Kubernetes isn't just for the newest applications
“Although new architectural styles such as microservices and serverless and technologies such as service meshes are a natural fit with Kubernetes, traditional monolithic apps can run in containers too, " says Gordon Haff, technology evangelist, Red Hat. "Furthermore, to allow even more apps to take advantage of Kubernetes, now there’s container-native virtualization and KubeVirt to support virtualized workloads on Kubernetes."
"Such flexibility is important because as the data in Red Hat’s State of Enterprise Open source report tells us, 31 percent of existing apps are being left as-is. An enterprise platform needs to support those apps too - not just newly-written or re-architected ones,” Haff says.
[ Get the free eBook: O'Reilly: Kubernetes Operators: Automating the Container Orchestration Platform. ]
2. Kubernetes plays a big role as enterprises use multiple public cloud services
Kubernetes isn’t limited to running as a single cluster on a single cloud. “Running multiple clusters and even multiple clouds can have a variety of advantages," Haff says. "For example, deploying both legacy and cloud-native applications across distributed clusters can increase application availability. At the same time, there are good reasons to centralize the operational control of those clusters. Advanced Cluster Management for Kubernetes unifies multi-cluster management, provides policy-based governance, and extends application lifecycle management.”
3. Kubernetes is becoming the de facto compute control plane for not only cloud native but also on-premises resources
“Developers are becoming acclimated to building and shipping containers. Containers allow for complete packaging of services to eliminate the toil of maintaining unique developer environments," says Chris Short, Red Hat OpenShift principal technical marketing manager. "At the same time, operations teams are gaining the skills and tooling to manage Kubernetes clusters at scale. As those muscles get stronger, teams realize that multiple, smaller clusters meet their demands better.”
“We are quickly moving towards a world where administration of 'legacy' infrastructure can occur in Kubernetes clusters like we see with OpenShift virtualization," Short says. "Kubernetes is looking to become a real powerhouse in enterprise IT for years to come.”
4. Kubernetes workloads can take advantage of hardware resources for acceleration, namely GPUs
You may not realize that Kubernetes can tap into the power of Graphics Processing Units (GPUs), to accelerate machine learning and artificial intelligence (AI) workloads, notes Erik Jacobs, senior principal technical marketing manager, cloud platforms, Red Hat. This matters at a time when companies in vertical industries from finance to healthcare are trying to tap into insights buried in large data sets using machine learning tools that become smarter over time at detecting patterns.
Open Data Hub, an open source community project, offers data scientists (and others doing data analysis) self-service tools and reference points. As this blog explains, Open Data Hub “implements end-to-end workflows from data ingestion, to transformation to model training and serving for AI and ML with containers on Kubernetes on OpenShift. It is a reference implementation on how to build an open AI/ML-as-a-service solution based on OpenShift with open source tools, e.g. Tensorflow, JupyterHub, Spark.”
Companies such as HCA Healthcare, ExxonMobil, and BMW Group have used these tools to deploy containerized ML tool chains and DevOps processes on OpenShift. The goal: Accelerate workflows for data scientists. (For more detail on how it works, read the full blog post: Building an open ML platform with Red Hat OpenShift and Open Data Hub Project.)
5. Kubernetes is necessary but not sufficient for a complete container platform
That’s a good example of the power of the Kubernetes ecosystem and a commercial Kubernetes platform working together. For some more examples, see Haff's recent article, 5 open source projects that make Kubernetes even better.
Just as a Linux distribution needs more than just a process scheduler to run meaningful workloads, a container distribution also needs more than just a container scheduler, notes David Egts, chief technologist, North America public sector for Red Hat.
“Kubernetes is the defacto standard for container orchestration but it’s only one part of a container platform," Egts says. "In addition to a container scheduler, a complete container platform needs platform services, application services, developer services, cluster services, and an operating system."
[ Read also: OpenShift and Kubernetes: What’s the difference? ]
6. Containerized workloads aren't just for homegrown apps
Plenty of independent software apps have been containerized and have corresponding Kubernetes Operators available to help with their entire lifecycle, notes Egts. “Instead of using containers for new, home-grown apps and connecting them with ISV apps running on legacy virtualization, both can co-exist harmoniously on the same platform, lessening the need to have one foot in the new world and one in the old,” Egts says.
That’s a benefit when enterprises are striving to reduce technical debt, but can’t erase it all at once.
Happy sixth birthday, Kubernetes. Want to learn more? Check out these resources and share them with your team:
The Enterprisers Project's deep dive: Everything you need to know about Kubernetes.
Opensource.com: A beginner's guide to Kubernetes container orchestration
Opensource.com: Build a Kubernetes cluster with the Raspberry Pi
Kubernetes glossary cheat sheet: 10 key concepts in plain English
Containers primer: Learn the lingo of Linux containers
Kubernetes Documentation: From the official Kubernetes site
Why Kubernetes matters to IT leaders: Red Hat's point of view.