Kubernetes Rolling Updates Explained

May 31, 2026


When considering Kubernetes, it is tempting to focus solely on the speed at which a new pod can be instantiated. The truth is that the critical factor lies in whether that pod is ready to handle incoming traffic. The nuances of rolling updates illustrate this distinction perfectly. Rolling updates are not simply about the mechanical act of replacing old pods with new ones; they are a well-orchestrated process of managing traffic transitions in a controlled manner.

The general flow of a rolling update begins with existing application instances running on v1 pods. When a new version needs to be deployed, Kubernetes creates the v2 pods. However, these new pods do not instantly become eligible for traffic. Instead, various readiness probes are employed to assess if the new pods can truly serve requests. Only when these probes confirm the readiness does the service begin routing traffic to the new instances, gradually phasing out the old v1 pods until all traffic is directed to v2. This is a vital distinction. A pod may be in the Running state but still not be Ready, sitting idle as it loads configuration files, warms up caches, opens database connections, or initializes necessary background workers. Should traffic be routed to it prematurely, users could encounter timeout errors or 5xx responses, even if the deployment process appeared successful on the surface.

Understanding the difference between Running and Ready is key to effective deployment strategies. In essence, a Running pod indicates that the container has started successfully, but Ready is the state indicating that it can successfully manage traffic. This is where the importance of readiness probes shines. They transform the deployment approach from a "create new pods and hope for the best" mentality into a disciplined system where traffic is only directed to pods that are truly prepared to handle it.

A noteworthy failure that highlights this principle involved a recent deployment in which we overlooked the readiness checks. As soon as the new pods were spun up, traffic was allowed to flow to them without ensuring they were fully prepared. The result was a spike in 5xx errors that persisted for several critical minutes. When one of our core services experienced this level of disruption, it led to a 15 percent decrease in user engagement over a three-day period. In a competitive landscape, that kind of impact can be devastating.

The overarching lesson drawn from these experiences is that successful deployments hinge not only on the creation of new versions but also on the timing of traffic transitions. It is essential to be vigilant about readiness probes and to understand the implications of sending traffic before pods are prepared. Rushing this aspect can lead to unforeseen failures and dissatisfied users.

Putting it simply, the deployment process is not just about spinning up new instances. It also involves an essential focus on traffic management and timing. A safe deployment hinges not only on creating the next version; it also relies on ensuring that traffic is directed to the next version only when it is truly ready to handle it.

Key takeaway

Think of Kubernetes deployments as a traffic control system where the health of new pods determines when to switch over. It emphasizes the importance of readiness over mere pod creation.

Originally posted on LinkedIn. View original.


All Rights Reserved.