Interview Kubernetes, Docker, Helm & Podman

What is a PodDisruptionBudget, and how does it protect availability during maintenance?

Kubernetes, Docker, Helm & Podman · Intermediate level

Answer

A PodDisruptionBudget limits voluntary disruptions by specifying minAvailable or maxUnavailable. It protects availability during node drain, upgrades, or autoscaler scale-down, but it does not prevent involuntary failures.

Technical explanation

PDBs only affect voluntary disruptions through the eviction API; node crashes can still take Pods down.

Overly strict PDBs can block upgrades and drains, so set them according to replica count and real availability needs.

Troubleshooting starts from state and events: get, describe, logs, previous logs, events, and then node/runtime/network checks.

Separate scheduling failures, image pull failures, runtime failures, app failures, and traffic-routing failures so you do not fix the wrong layer.

Operational commands like drain and rollback must respect PDBs, probes, and workload disruption tolerance.

Hands-on example

1. In a non-production namespace, create this safe broken scenario: create a PDB and observe how it affects kubectl drain.

2. Follow a fixed triage order: kubectl get, describe, logs or logs --previous, events, rollout status, node status, and then runtime/network checks.

3. Fix only one variable at a time so the root cause is clear rather than accidentally masked.

4. Save the commands and final diagnosis as an interview-ready incident walkthrough.

Preparing for an interview?

Check how well your resume matches the role with our free resume checker— match score, ATS check, and the skills you're missing.

More Kubernetes, Docker, Helm & Podman interview questions

← All Kubernetes, Docker, Helm & Podman questions