Kubernetes is exploding in terms of popularity and adoption. Since 2021, nearly all organizations (94%) have been using Kubernetes in production, and there have been over 2.8 million contributions to the platform. What’s driving this growth?
The popularity of Kubernetes among developers is growing in sync with the adoption of DevOps and CI/CD methodologies, and the “shift-left” trend, as operations and development teams come together to enable rapid delivery and deployment of innovative apps and services. In other words, developers now have a stake in platform operations, and the operations team has a stake in development.
During a recent webinar, Adam Bergh, Cloud Native Solutions Architect, at Kasten by Veeam, and Lenovo’s Principal Engineer and Chief Technologist Dr. Ajay Dholakia, discussed the evolution of software development in the enterprise. Specifically, they explored the possibility of Kubernetes becoming the leading Enterprise Application Platform, enabling developers and operations staff to work quickly and collaboratively to bring innovative software products to market.
“Operations teams and development teams are coming together, driven by the need for faster delivery and deployment of feature-rich applications, Dr. Dholakia said.
Let’s examine how the development landscape has changed over the last 20 years, and what lies ahead for enterprise software developers.
An Evolving Development Landscape
Just two decades ago, every application ran on its own bare metal server. Infrastructure providers benefited by selling more servers as enterprise customers scaled to meet demands for more applications. “The only way you could scale was to add more servers,” Bergh said. “But behind the scenes, people were aware that server utilization wasn’t as high as it could be, and that led to the adoption of virtualization.”
Popularized by VMware in the early 2000s, virtualization introduced the concept of sharing the hardware infrastructure between different applications–an efficient and cost effective alternative to adding servers and increasing data center CapEx. “With virtualization, you could have an operating system image, along with all the dependencies for an application and the application code itself, all packaged as virtual machines,” Bergh said. “You could have multiple VMs per server, instead of just one single application.”
This shift required operations teams to adopt new, more advanced management tools, such as VMware VSphere and others. “Once people virtualized their application resources, they needed a new way of managing them,” Bergh said.
Fast-forward to about 2015, and another shift took place. “We realized that if we’re putting an OS image in every VM, perhaps we could simplify this further and virtualize an OS image,” Bergh said. This gave rise to containerization, where the hardware and OS are shared across multiple applications. “The application and all of its dependencies are still packaged as a container, but you don’t need to insert the entire OS image,” Bergh said. “Because containers are lightweight and use less memory, you can have not tens but hundreds per server, taking capacity up another order of magnitude.”
Bergh added that this approach also improves security because developers aren’t cloning the OS every time they clone an application. “You don’t need to patch hundreds or thousands of operating systems to address a single vulnerability,” he said.
According to Dr. Dholakia, the shift to using containers brings new challenges. “Now you are dealing with hundreds of artifacts, so management and orchestration become key considerations,” he said. “Kubernetes has emerged as the leading tool for container orchestration, and for driving cloud native modernization.”
With Change Comes Challenges
However, in using Kubernetes, teams must grapple with data management challenges. Rapid deployment can result in misconfigurations and bugs that put an organization at risk. And because teams are using Kubernetes clusters along with some legacy bare metal servers and VMs, they must often manage multiple data protection solutions, which increases complexity.
One of the biggest challenges is backup and recovery, which is why Lenovo is partnering with Kasten. “We are always looking at all aspects of the hardware infrastructure, on-premises, in edge locations or in hybrid cloud settings,” Dr. Dholakia said. “We work with proven partners like Kasten by Veeam to provide leading-edge capabilities that help DevOps teams overcome the Day 1 and Day 2 challenges involved with adopting Kubernetes as their enterprise application platform.”
In the next blog post of this 3-part series, we’ll explore the rise of stateful applications in Kubernetes.
Learn more about Kasten’s partnership with Lenovo by listening to this webinar. You can also try Kasten K10 for free.