Kubernetes Deployment Rollout Stuck / ProgressDeadlineExceeded

Why this matters

A stuck rollout means a new version of your application never becomes healthy. If you don't catch it quickly, traffic may be served by a half-updated fleet, or the rollout might silently stall during an incident.

Warning: Do not delete pods manually to unblock a rollout; fix the Deployment spec or roll back instead.

Symptoms

Common root causes

How KubeGraf helps

Step-by-step using KubeGraf UI

1. Confirm the rollout is stuck

kubectl rollout status deployment/<name> -n <namespace>

Note any message like progress deadline exceeded. Then:

2. Open the Deployment view

3. Identify blocking pods

4. Inspect Events for scheduling or probe issues

0/3 nodes are available: 3 Insufficient cpu/memory
Readiness probe failed: HTTP 500
FailedScheduling: 0/3 nodes available due to taints

5. Compare new vs previous ReplicaSet spec

6. Decide: roll back vs fix forward

kubectl rollout undo deployment/<name> -n <namespace>
kubectl rollout status deployment/<name> -n <namespace>

7. Verify impact at the service level

What to check next

Common mistakes

Related issues

Expected outcome

After following this playbook you should:

[ TODO: screenshot showing KubeGraf Deployment view with rollout status and blocking pods highlighted. ]