
Building the AI-powered business: 4 ways cloud leaders redefine success
How is next-generation cloud redefining outcomes and organizations? PwC’s 2024 Cloud and AI Survey reveals what it takes to compete in an AI economy.
What is Kubernetes? Kubernetes, also known as K8s, is a platform for deploying, scaling, and managing software applications that run in containers—a form of packaging for applications and their dependencies. Originally developed by Google, and released as open source in 2014, Kubernetes and its related toolkits are now used widely by corporate technology teams, including those at Google’s rivals such as Microsoft, Apple, Amazon, and Meta.
Kubernetes is an effective solution for companies with highly complex ecosystems of containerized software applications. Although large companies are most likely to benefit, startups may also find that Kubernetes helps them get to scale more quickly and efficiently.
“Historically, software application development has been a challenging process, often constrained by hardware and platform limitations,” says Binqi Zhang, a director with PwC Australia’s digital engineering practice. “This led to the development of containerization as a way to decouple applications from underlying infrastructure—basically providing applications with everything they need to be deployed on any infrastructure or digital platform.”
Over time, however, containerization led to a proliferation of self-contained applications, creating its own challenges for technology teams, especially in a world of frequent software updates. Kubernetes is an automated system for managing containerized complexity, greatly reducing operational challenges by enabling organizations to run multiple containers and scale them up without the need for manual coding. It enables policies to be set centrally and code changes to be rolled out more quickly.
At the same time, Kubernetes can constantly monitor the “health” of containers and balance load to distribute traffic and deploy compute/storage resources as needed. It also supports security by identifying traffic patterns that could compromise containers and signal a cyberattack.
“By employing automated containers in a cloud-native environment, Kubernetes simplifies the process of building and running complex applications,” says Zhang. “This gives operations teams the ability to build new applications and deploy and scale them at speed. The business benefit is speed and agility. It enables organizations to adapt more rapidly to a changing business environment.”
On-premises workloads can also be spread across multiple cloud environments, zones, and regions, improving resilience and flexibility. And as application containers are replaced with new versions instead of being updated, it becomes easier to maintain version control and deploy rapid rollbacks if any issues are discovered in containerized code.
Similarly, automated container monitoring, which restarts containers when they have failed and removes unresponsive containers, improves reliability and enables “self-healing” properties with far less downtime and need for manual maintenance than systems not orchestrated by Kubernetes.
Technology leaders with responsibility for software development and maintenance, including CIOs, CTOs, CISOs, chief digital offers, and heads of R&D and DevOps. Given the proliferation of cloud platforms and applications, there could be a role for Kubernetes across most sectors, though those focused on software development are, of course, the most likely to see value potential.
Although it can save technical teams significant time in the long run, Kubernetes takes time to develop and implement initially, which may make them unsuitable for some start-ups or smaller firms. Companies with more static and predictable workloads may also find Kubernetes less applicable to their needs.
“To determine whether to adopt Kubernetes, organizations should consider first whether a monolithic or microservices architecture works best for them when building new applications,” says Matt Cudworth, engineering practice leader and a partner with PwC Australia.
Although Kubernetes can be used to manage applications in monolithic architectures, its roots are in microservices-based approaches to software development and deployment.
A monolithic architecture consists of one large codebase comprising front-end code, back-end code, and configuration files. Monoliths are the traditional means of building applications, and are often faster to develop and deploy, but harder to scale and manage when applications become complex. A microservices architecture splits up the code bases within discrete applications, assigning each one a specific task. This structure makes it possible to deploy and update applications independent of the other components, which, in turn, makes them easier to manage and scale.
PwC US: Cloud migration and application modernization explained
Tech Republic: Kubernetes: A cheat sheetOpens in a new window
Kubernetes.io: Case study: The New York TimesOpens in a new window
Pew Research Center: How we adopted Kubernetes for our data science infrastructureOpens in a new window
PwC Global: Data and analytics
Global Chief AI Officer for the PwC Network of Firms, PwC US
Tel: +1 215-704-0372