Kubernetes · Interview and Certification · Intermediate · 26 min read · FREE LESSON

Kubernetes Interview Scenarios: How to Think Aloud and Win the Round

Twelve realistic troubleshooting and design scenarios with a repeatable answer structure, model answers, the commands interviewers expect, and the follow-up questions to prepare for.

A story to begin with

What interviewers are really testing

They ask about They are checking
A broken deployment Method, calm, mitigation before diagnosis
How a feature works (Services, scheduler) Mental model, not memorised definitions
Design a platform or an app on Kubernetes Trade-offs, failure thinking, operations
Security or cost questions Judgement and prioritisation
"Tell me about a time..." Ownership and learning

The six-step structure for any scenario

flowchart LR
  A[1. Clarify<br/>impact, scope, recent change] --> B[2. Mitigate<br/>safest reversible action]
  B --> C[3. Observe<br/>describe, events, logs, metrics]
  C --> D[4. Hypothesise<br/>and test one thing at a time]
  D --> E[5. Fix and verify]
  E --> F[6. Prevent<br/>alert, test, guardrail]
  style B fill:#f87171,color:#fff
  style F fill:#34d399,color:#062

Say the step names aloud. It shows structure, and it keeps you from freezing.

Scenario 1: Pod stuck in Pending

Prompt: "A new deployment's pods stay Pending." Approach: kubectl describe pod and read Events for FailedScheduling. Typical reasons: insufficient CPU or memory (requests too high or cluster full), untolerated taints, node selectors or affinity that match nothing, an unbound PersistentVolumeClaim, a namespace quota, or a volume zone conflict. Fixes: lower requests, add nodes (or check the autoscaler), correct selectors or tolerations, fix the PVC or StorageClass. Follow-up: "How would you prevent it?" Right-size requests, capacity alerts, quota monitoring.

Scenario 2: CrashLoopBackOff

Approach: impact first. Then describe for the exit code and reason, logs --previous, recent changes (image, config, secret), probes, resource limits. Exit code 137 suggests an OOM kill; a failing liveness probe shows in Events. Mitigate: if a release caused it and users are affected, kubectl rollout undo. Follow-up: "What if logs are empty?" The process died before logging, so check the command and arguments, missing config files, permissions, or use kubectl debug with an ephemeral container.

Scenario 3: Service not reachable

Approach (inside out): kubectl get endpoints svc. Empty means selector mismatch or no ready pods. If endpoints exist, test a pod IP directly from a debug pod, then DNS resolution, then NetworkPolicy and ports (port versus targetPort). Follow-up: "Pod IP works but Service does not?" Check targetPort, kube-proxy or the dataplane, and policies on the Service path.

Scenario 4: Rollout is stuck

Approach: kubectl rollout status and describe deployment. Look for readiness probes failing on new pods, image pull errors, insufficient capacity for surge pods, quota, or a PDB blocking. ProgressDeadlineExceeded confirms the stall. Mitigate: rollout undo. Prevent: better readiness checks, canary, surge and capacity settings.

Scenario 5: Node NotReady

Approach: kubectl describe node conditions (MemoryPressure, DiskPressure, PIDPressure), kubelet and runtime logs on the node, network and cloud instance health. Pods are rescheduled after the eviction timeout, so confirm replicas elsewhere are healthy. Mitigate: cordon, drain if possible, replace the node. Prevent: disk and memory alerts, log rotation, image garbage collection, node auto-repair.

Scenario 6: Latency spikes with low CPU

Approach: suspect CPU throttling (check container_cpu_cfs_throttled_* metrics against limits), noisy neighbours, connection pool or thread limits, DNS (ndots, CoreDNS load), cross-zone calls, or a slow dependency (trace it). Fix: raise or remove the CPU limit for latency-sensitive pods, fix pool sizes, NodeLocal DNSCache, topology-aware routing.

Scenario 7: OOMKilled repeatedly

Approach: compare memory usage over time with the limit. Steady climb suggests a leak; a spike suggests load or a big request. JVM and similar runtimes need heap settings below the container limit, plus off-heap memory. Fix: raise limits as a stopgap, fix leaks, tune the runtime, and set requests equal to limits for predictability.

Scenario 8: Design a multi-tenant cluster for ten teams

Answer structure: isolation (namespaces, quotas, limit ranges, network policies, RBAC per team, Pod Security), fairness (priority classes, resource quotas), cost (labels, chargeback, autoscaling), operations (shared observability, GitOps per team), and blast radius (separate clusters for production versus non-production, or for regulated workloads). Mention the trade-off between one large shared cluster and several smaller ones.

Scenario 9: Zero-downtime deployment for a stateful app

Answer: use a StatefulSet or operator with ordered, partitioned rolling updates, PDBs, readiness gates tied to replication health, schema changes via expand-and-contract, backups before upgrading, and canarying on a replica first. Be honest that "zero downtime" for databases depends on the engine's HA design.

Scenario 10: Secure a cluster that currently has cluster-admin everywhere

Answer: inventory bindings; define standard roles mapped to SSO groups; remove broad bindings gradually; per-app service accounts; Pod Security restricted via warn then enforce; network policies default-deny; secrets in a manager with encryption at rest; audit logging and alerts; supply-chain controls. Emphasise phasing and measuring.

Scenario 11: Cut the Kubernetes bill by 30%

Answer: measure first (requested versus used, idle nodes, orphaned volumes, cross-zone traffic), right-size requests with VPA recommendations, enable autoscaling and node consolidation (for example Karpenter), use spot for tolerant workloads, schedule non-production shutdowns, set quotas and budgets, and track cost per service.

Scenario 12: Explain what happens when you run kubectl apply

Answer: the request is authenticated and authorised, passes admission, is stored in etcd; controllers see the change through watches and create ReplicaSets and pods; the scheduler assigns nodes; the kubelet pulls images and starts containers; probes decide readiness; the endpoints controller adds ready pods to Services. Mention that every component talks only to the API server.

Rapid-fire questions to rehearse

  1. Difference between a Deployment and a StatefulSet?
  2. What is a headless Service?
  3. Liveness versus readiness probes?
  4. How does the scheduler pick a node?
  5. Requests versus limits; QoS classes?
  6. How do Secrets differ from ConfigMaps, and are they encrypted?
  7. How does RBAC work; Role versus ClusterRole?
  8. What is a PodDisruptionBudget?
  9. Taints and tolerations versus affinity?
  10. How does HPA calculate replicas?
  11. What is a CRD and an operator?
  12. How do you upgrade a cluster safely?
  13. What is etcd and why does it matter?
  14. How do pods communicate across nodes (CNI)?
  15. How would you debug DNS failures in a cluster?

Talking about experience you do not have

Be honest and show learning: "I have not run that in production, but in my lab I did X, and here is how I would approach it at scale." Interviewers value truthfulness plus a credible method over bluffing.

Using what you learn in your own organization

flowchart LR
  A[Collect real incidents<br/>from your clusters] --> B[Turn each into a<br/>scenario card]
  B --> C[Monthly 45-minute<br/>practice session]
  C --> D[Update runbooks<br/>with what was missing]
  style C fill:#6366f1,color:#fff
  1. Keep a scenario library built from your own incidents (anonymised): prompt, evidence available, expected approach.
  2. Run a monthly session where one person plays the cluster and another debugs aloud.
  3. Use the same structure when you interview candidates, so you grade method, not memorised facts.
  4. Turn gaps found in the sessions into runbook and dashboard improvements.

Interview questions

Q1. How do you debug a pod that will not start? Check phase and events with describe, then image pull status, scheduling reasons, config and secret references, probes, resource limits and previous container logs, working outward from what Kubernetes already reports.

Q2. What do you do first during a production incident on Kubernetes? Establish impact and recent changes, communicate, then take the safest reversible mitigation (rollback, scale, redirect traffic) before deep investigation.

Q3. How would you explain Kubernetes to a non-technical manager? It is a system that keeps the right number of healthy copies of each application running, replaces failures automatically and rolls out updates safely, based on a description of what we want.

Q4. Describe a design decision involving a Kubernetes trade-off. For example one shared cluster versus several: shared is cheaper and simpler to operate, separate clusters limit blast radius and meet compliance needs. Explain how you would decide using risk, cost and team capacity.

Q5. What would you prioritise in your first month as a platform engineer? Understand the current setup and incidents, measure baseline reliability and cost, fix the noisiest problems, add guardrails and templates, and propose a roadmap with owners.

Next: unlock CKA and CKAD Exam Strategy for hands-on exam preparation.