CNCF: Kubernetes Continues To Mature – But is it Grown Up?
Technology grows up. Obviously, that’s not a term we normally use, because, of course, we say that applications, platforms, tools, components and entire ecosystems eventually start to evolve, extend and mature.
Now looking at where the Cloud Native Computing Foundation’s total project base sits some halfway through 2024, the CNCF is upbeat about Kubernetes due to the clearly visible groundswell of interest that the orchestration platform has afforded the increasingly compartmentalized world of containers and microservices.
“Kubernetes continues to mature with its consistent and largest contributor base,” states Chris Aniszczyk, an open-source technologist who sits as a CTO at the Linux Foundation focused on developer experience and running the CNCF status and operations.
In fairness to Aniszczyk, his brevity stems from the fact that he was discussing the top 30 open source projects that fall under the purview and stewardship of the Linux Foundation and the CNCF. But, if we’re being clinical, what do we really mean by software maturity and how does it apply to Kubernetes in this instance?
What is Mature Software?
Unlike people, cheese or wine, mature software isn’t simply a factor of how long an entity or thing has been around.
A more relevant definition for enterprise software might state that maturity status is reached when technology has established its security credentials for handling mission-critical data when it is widely agreed to be reliable and robust, when it can display extensive field-tested proof-of-worth in live deployment environments… and of course, the point at which it is actively maintained and has a vibrant and growing community.
The co-founder at the digital product agency Simple Thread is Justin Etheredge. Openly vocal on this subject, Etheredge says that a good measure of software maturity is how “solid” the software is.
What is Solid Software?
“[Software solidity] can be broken down into several different qualities, but I will stick with a measure of defects. Over time the number of defects will hopefully be on the decline as a piece of software matures,” he says. “Second we should measure how well the software has evolved to fill its role. Over time we assume that a piece of software will change with market pressures to become something that fills its role better than when it was originally released. This is a somewhat relative measurement of maturity, but given a particular piece of software, we could probably find some ways to measure it.”
Moving back to specific Kubernetes maturity, we can approach this subject by remembering that the Kubernetes Maturity Model exists to help identify where an organization is on its journey to cloud native. The CNCF says that is an important tool that helps firms to self-identify where they are with K8S, to understand gaps in their compute environment and to gain insights into enhancing and improving their Kubernetes stack.
“One measurement of maturity for the technology I use is how much of the total conversation discussion points it takes up between working practitioners,” said Patrick McFadin, vice president, developer relations at DataStax. “Where everyone once talked about the cloud, now it’s assumed in conversation. Kubernetes dominated infrastructure conversations for years and is starting to become less of THE topic and more A topic. The main contributor to increased conversation for Kubernetes was the expansion of use cases and the projects needed to enable all of the community’s needs. We saw an explosion of projects trying to tick every box and now we have an amazing ecosystem.”
The suggestion today is that Kubernetes is a stable platform and is well respected by the larger DevOps community. The challenge now perhaps is working out how we realize all the dreams of reduced toil that K8S promises.
“Newcomers still find the learning curve very steep and get in trouble when bad decisions are made,” advised McFadin. “Deployment and Day 2 operations need much more automation, which should be the community’s focus. I’m particularly interested in self-tuning systems that Kubernetes potentially holds the promise to fulfill. Once that aspect has improved, I think we’ll hear less about Kubernetes and more about what we’re doing with it. This is an engaged community, and we aren’t far from that day.”
Kubernetes Maturity Model
For Danielle Cook in her role as content marketing director at managed Kubernetes-as-a-Service company Fairwinds, the Kubernetes Maturity Model is an important mechanism for going on the prepare-transform-deploy-extend-improve path that operations can follow today.
“The next phase of Kubernetes maturity is when you introduce more measurement and control of the environment. You and your team are functioning well within Kubernetes, have an overall understanding and there is organization-wide adoption. You are developing a deeper functional understanding of Kubernetes and opinions on how things should be done within clusters and the overall environment. Further, the team is ready to tackle technical debt from previous phases,” suggests Cook, who is also a CNCF ambassador, in a technical blog.
Kubernetes De Facto Tablestakes?
The question now arises, has Kubernetes matured enough to become a de facto standard? Is Kubernetes, as they say in the microservices-themed casinos of Las Vegas a case of containerization tablestakes?
“Currently, no one in the IT industry can imagine building containerized applications without using Kubernetes,” stated Andrzej Arendt, CEO of Cyber Geeks, a software house that runs a strictly Kubernetes-centric technology substrate. “It automates most of the technical tasks i.e. load balancing, resource optimization, DNS, automated deployments, etc. Now 10 years on from its status as a fledgling open source project, it has evolved into a mature and reliable tool for maintaining a distributed container environment, available from virtually every cloud operator.”
Regardless of the choice of K8S distribution, Arendt explains that the client receives a fixed set of standardized tools enabling fully automated deployment of containers. He thinks that the maturity of Kubernetes has made it a standard around which many other projects supporting existing functionalities have been created.
“Currently, great emphasis is placed on the security and monitoring of infrastructure and containers. Depending on a team’s needs, the cluster size and the associated maintenance costs can be freely optimized, taking into account, for example, the types and number of nodes. Kubernetes is the next step towards transforming the cloud-native approach. That’s why today we could describe K8S as mature for sure,” added Arendt.
Does What it Says it Does
In the future, we may be able to assess and comprehend software maturity in even simpler terms. A time-honored UK television advertisement promoting Ronseal wood stain stated that the product “does exactly what it says on the tin” with huge market success.
By that same rationale, if all we need to say about Kubernetes is that it is an open-source system for automating deployment, scaling and management of containerized applications… and that’s it, because if it does, then Kubernetes is mature.