The Kubernetes project this week unveiled the latest version of the orchestration platform, hitting double digits with the 1.10 release. But, now that Kubernetes is a quasi-teenager, where does it go from here?
There has been a lot of talk of expanding the use of Kubernetes outside of the container environment in which it was founded. This includes efforts by AT&T to use Kubernetes as an orchestrator for the next generation of its AT&T Integrated Cloud platform.
The most recent Kubernetes releases have shown a maturation of the platform that could drive interest in expanding its use.
“This [release] is more evidence of the reality that Kubernetes is maturing nicely, and that recent releases are not dominated by any single large feature, but are rather built from a steady improvement of many components governed by mostly autonomous teams,” explained Bich Le, chief architect and co-founder of Platform9, in a blog post.
Nevertheless, the continued pace of innovation is taking a toll on adoption.
“Enterprises, even the most forward-looking, are somewhat conservative – and as such are generally going to be running at least one release behind [in areas such as operating systems we frequently see upgrades, beyond security patches, running out at least 18 months and beyond],” noted RedMonk analyst Fintan Ryan, in a recent blog post on the evolving container ecosystem.
Enterprises have historically had multi-year purchase cycles that is outdated but still exists. For these companies to even move from a three-year cycle in procuring networking equipment and software to a one-year cycle is a monumental task.
“Kubernetes moves fast, probably too fast for enterprises,” explained Mike Cohen, senior director of project management for data center at Cisco. “If you’re not upgrading every few weeks, you find yourself running an outdated version.”
Cohen did note that the Kubernetes community was stabilizing portions of the platform while allowing other aspects to further innovate. “Helping enterprises zero in on a target they can build upon is super important,” he said.
Platform9’s Le said interoperability and support continue to be big obstacles for enterprise adoption.
“Kubernetes works very well with new applications,” Le said. “But, the question remains on what do you do with all of these legacy apps. Just porting them over or running them as VMs in a container world does not work very well.”
Developers Not Immune
The pace is also impacting developers.
“Due to the high level of community activity, releases currently are coming out so fast that version changes impact the ability to deploy production software,” said Rob Lalonde, VP and GM for Univa’s enterprise platform. “Developers build for one release and six months later a new release is out with new capabilities and APIs that require further development to adapt to.”
James Strachan, senior architect at CloudBees, said developers at the large cloud providers are able to take greater advantage of the updates and are seeing a strong boost in their ability to automate processes using Kubernetes. But that evolution has not yet made it down the deployment pipeline.
“Kubernetes is ideally suited to the public cloud where the big cloud vendors can automate it nicely,” explained Strachan. “For folks who want to use Kubernetes on premises it can be tricky to install and operate.”
A stronger focus on deployment automation could be one way to overcome that challenge.
“The main thing Kubernetes needs are proven patterns for enterprise adoption,” said Nell Shamrell-Harrington, senior software development engineer at Chef. “Many enterprises are sold on the idea of Kubernetes – the interest and attraction to the technology are definitely there – but it is still very challenging to get started with the practice of implementing Kubernetes.”
Vendors are also struggling when it comes to taming the Kubernetes ecosystem. While most have adopted some level of Kubernetes into their operations, holes still exist.
“When apps fail it’s hard to get to the root cause and why things are failing,” Le said. “This is especially challenging since Kubernetes pods have a tendency to heal things themselves. You will see symptoms that are several layers of direction from where the root cause, but it’s hard to get to that root cause.”
Cisco’s Cohen said the growing stability of the Kubernetes base code should allow for more focus on these other layers that can help the vendor community.
“Kubernetes needs to align on a stable core nucleus, a kernel that only a very experienced few should mess around with, and then call out layers, such as policy, where multiple approaches make sense and rapid innovation is strongly encouraged,” he said.
The Kubernetes community is not slowing down in terms of new updates, with the 1.11 version expected to hit in three months. The Kubernetes Project has said it expects that update to focus on stabilizing the CoreDNS beta push from the 1.10 update and moving the kubeadm cluster installer to general availability.