Hardware FixRecommendedDevice not working? Your driver may be the problemCheck updates for common hardware issues.Fix DriversOctober DealsAmazon USOctober deal check: compare before you payAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
Skip to content
World desk4 min

Why a Kubernetes Rolling Update with maxUnavailable: 0 Can Still Drop Requests

Kubernetes maxUnavailable: 0 constrains rollout availability, not client request success. Trace readiness, endpoint updates, traffic routing, graceful shutdown, and surge scheduling to find where requests are lost.
Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

maxUnavailable: 0 prevents a Deployment rollout from intentionally reducing the number of Pods Kubernetes counts as available below the desired replica count. It does not guarantee that every client request succeeds. Readiness, endpoint updates, application shutdown, external routing, and surge capacity all affect what happens to real traffic. To find the cause, trace those layers on a shared timeline instead of treating availableReplicas as a request-success metric.

What maxUnavailable: 0 guarantees—and what it does not

Kubernetes uses maxUnavailable as a constraint on Deployment rollout availability. It is not a measure of successful HTTP requests or a guarantee that every traffic path will switch cleanly during a Pod replacement. The Deployment documentation also notes that terminating Pods are not counted when calculating availableReplicas, even though they can continue consuming resources until their termination grace period expires. Kubernetes Deployment documentation

As an Amazon Associate I earn from qualifying purchases.

With zero unavailable replicas allowed, maxSurge cannot also be zero: the rollout needs permission to create temporary Pods above the desired replica count. Those extra Pods still need enough schedulable cluster capacity and must become ready for the rollout to progress. The documented defaults are 25% for both maxUnavailable and maxSurge; percentage values round down for maxUnavailable and up for maxSurge. Defaults and API behavior can vary by Kubernetes release, so check the documentation for the version actually running in your cluster. Deployment rollout settings Deployment v1 API reference

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Where requests can fail during a rollout

Readiness does not match real request health

A readiness probe tells Kubernetes whether a container is ready to accept traffic. When a readiness check fails, the EndpointSlice controller removes the Pod IP from EndpointSlices for Services that select it. But a passing probe can still disagree with user-visible health: it might succeed before the application can handle real requests, omit a dependency, or fail to reflect cache warmup or overload. Compare probe results and transitions with the actual request path and observed failures. Pod lifecycle and probes

Endpoint changes and the traffic path do not move as one

Pod deletion and EndpointSlice processing are part of a lifecycle that includes graceful shutdown. Seeing a Pod marked terminating, or seeing EndpointSlice membership change, does not by itself establish when a particular ingress, proxy, or external load balancer stops sending it traffic. Verify the backend view and routing behavior of the components your clients actually traverse; Kubernetes documentation does not specify timing guarantees for an unspecified external dataplane. Pod termination and endpoint behavior

The application or sidecar stops before active work drains

During graceful termination, kubelet normally asks the container runtime to send SIGTERM to the main process. A configured preStop hook runs before that signal, within the termination grace period. Kubernetes documents a default terminationGracePeriodSeconds of 30 seconds; when the grace period expires, remaining processes are killed. The application and any sidecars need to handle this shutdown sequence and finish or deliberately reject in-flight work within the available time. Pod termination lifecycle

Surge Pods cannot schedule or become ready

A rollout with maxUnavailable: 0 depends on replacement capacity. If surge Pods cannot be scheduled because of resource constraints, or they do not become ready, rollout progression can stall. Check scheduler events and available cluster capacity rather than assuming the configured surge count is running and serving traffic. Deployment rollout behavior

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Diagnose the failure layer with a shared timeline

For a reproduction, correlate request failures with Pod readiness, deletion, endpoint membership, routing state, application shutdown, and scheduling. These signals help separate four commonly conflated conditions:

Compare What to inspect What it can reveal
Kubernetes readiness vs. application health Probe configuration and results, readiness transitions, real request outcomes, dependencies, cache warmup, and overload behavior. Whether the probe accurately represents the request path.
EndpointSlice membership vs. routing backends EndpointSlices for the Service and the backend state or traffic observed at the ingress, proxy, or external load balancer. Whether a routing layer continues sending traffic after endpoint state changes.
Drain time vs. termination budget SIGTERM handling, active-request draining, preStop work, terminationGracePeriodSeconds, and forced termination. Whether the application has enough time to finish work before shutdown.
Desired surge vs. schedulable capacity Deployment rollout conditions, scheduler events, resource requests, and whether new Pods become ready. Whether replacement Pods can run and serve before old Pods are removed.

1. Verify the live Deployment settings and rollout state

Inspect the Deployment’s strategy, desired replica count, maxUnavailable, maxSurge, minReadySeconds, and rollout conditions. Record ready, available, and terminating Pod counts with timestamps. A rollout that is progressing or stalled says something about controller state, not whether each client request succeeded. Deployment status and strategy Deployment v1 API reference

2. Check probe behavior against a real request

Inspect what the readiness endpoint tests and when its result changes during startup, overload, and shutdown. Correlate probe transitions with application logs and failed requests, including dependencies and warmup that the probe may not cover. Readiness probes

3. Follow endpoint state through the actual router

Inspect the Service’s EndpointSlices during Pod termination, then check when the ingress, proxy, or load balancer removes that Pod from its own backends or stops routing traffic to it. Record both observations on the same timeline as failed requests; EndpointSlice state alone cannot establish the behavior of an external traffic layer. EndpointSlices and Pod lifecycle

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

4. Inspect shutdown and in-flight request handling

Review application and sidecar behavior on SIGTERM, the work performed by preStop, the configured grace period, and whether the process drains or interrupts active requests. Check logs for shutdown timing and whether a process was forcibly killed when its grace period expired. Pod termination behavior

5. Check whether surge capacity is real

Review scheduler events and resource availability for Pods created during the rollout. Confirm that the new Pods were scheduled, became ready, and remained available long enough for the controller to proceed. Rolling update capacity

Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Why the exact cause depends on the cluster

The Kubernetes mechanisms explain how rollout availability, readiness, endpoint updates, and graceful termination interact; they do not identify the cause of a particular outage. The result depends on the Kubernetes release, application and sidecar shutdown behavior, CNI, ingress or proxy, and any cloud load balancer. A useful diagnosis therefore needs cluster events, request traces, endpoint and router state, and termination logs—not just the Deployment’s maxUnavailable value.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

More from the Wire

  1. World desk4 min
    How to Spot an AI Voice Scam Before Sending MoneyDon’t rely on how a caller sounds. Pause, call back through a known number, and verify the emergency with another trusted person before sending money.
  2. Mountain View desk4 min
    Google’s SynthID Detector: How to Check AI-Generated Images, Video and AudioGoogle’s SynthID Detector looks for an embedded watermark in supported images, video and audio. Here is what its results do—and do not—show.
  3. Redmond desk20 min
    How to create a link to File or Folder in Windows 11Windows 11 gives you several ways to point to a file or folder without moving or duplicating it. You can create a desktop shortcut,…
Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Outdated Drivers Are Slowing You DownFree scan - exact matches

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.