Kubernetes is a system that helps with the deployment, scaling and management of containerized applications. Engineers at Google built it to handle the explosive workloads of the company’s massive digital platforms. Then in 2014, the company made Kubernetes available as open source, which significantly expanded the usage.
Yes, the technology is complicated but it is also strategic. This is why it’s important for business people to have a high-level understanding of Kubernetes.
“Kubernetes is extended by an ecosystem of components and tools that relieve the burden of developing and running applications in public and private clouds,” said Thomas Di Giacomo, who is the Chief Technology and Product Officer at SUSE. “With this technology, IT teams can deploy and manage applications quickly and predictably, scale them on the fly, roll out new features seamlessly, and optimize hardware usage to required resources only. Because of what it enables, Kubernetes is going to be a major topic in boardroom discussions in 2021, as enterprises continue to adapt and modernize IT strategy to support remote workflows and their business.”
In fact, Kubernetes changes the traditional paradigm of application development. “The phrase ‘cattle vs. pets’ is often used to describe the way that using a container orchestration platform like Kubernetes changes the way that software teams think about and deal with the servers powering their applications,” said Phil Dougherty, who is the Senior Product Manager for the DigitalOcean App Platform for Kubernetes and Containers. “Teams no longer need to think about individual servers as having specific jobs, and instead can let Kubernetes decide which server in the fleet is the best location to place the workload. If a server fails, Kubernetes will automatically move the applications to a different, healthy server.”
There are certainly many use cases for Kubernetes. According to Brian Gracely, who is the Sr. Director of Product Strategy at Red Hat OpenShift, the technology has proven effective for:
- New, cloud-native microservice applications that change frequently and benefit from dynamic, cloud-like scaling.
- The modernization of existing applications, such as putting them into containers to improve agility, combined with modern cloud application services.
- The lift-and-shift of an existing application so as to reduce the cost or CPU overhead of virtualization.
- Run most AI/ML frameworks.
- Have a broad set of data-centric and security-centric applications that run in highly automated environments
- Use the technology for edge computing (both for telcos and enterprises) when applications run on low-cost devices in containers.
Now all this is not to imply that Kubernetes is an elixir for IT. The technology does have its drawbacks.
“As the largest open-source platform ever, it is extremely powerful but also quite complicated,” said Mike Beckley, who is the Chief Technology Officer at Appian. “If companies think their private cloud efforts will suddenly go from failure to success because of Kubernetes, they are kidding themselves. It will be a heavy lift to simply get up-to-speed because most companies don’t have the skills, expertise and money for the transition.”
Even the setup of Kubernetes can be convoluted. “It can be difficult to configure for larger enterprises because of all the manual steps necessary for unique environments,” said Darien Ford, who is the Senior Director of Software Engineering at Capital One.
But over time, the complexities will get simplified. It’s the inevitable path of technology. And there will certainly be more investments from venture capitalists to build new tools and systems.
“We are already seeing the initial growth curve of Kubernetes with managed platforms across all of the hyper scalers—like Google, AWS, Microsoft—as well as the major investments that VMware and IBM are making to address the hybrid multi-cloud needs of enterprise customers,” said Eric Drobisewski, who is the Senior Architect at Liberty Mutual Insurance. “With the large-scale adoption of Kubernetes and the thriving cloud-native ecosystem around it, the project has been guided and governed well by the Cloud Native Computing Foundation. This has ensured conformance across the multitude of Kubernetes providers. What comes next for Kubernetes will be the evolution to more distributed environments, such as through software defined networks, extended with 5G connectivity that will enable edge and IoT based deployments.”