grafclouds.com / documents / training / devops-challenges / k8s-oom-scale-vs-fix

Pods Keep OOMKilling: Scale Up or Fix the Leak?

Intermediate ~12 min read
KubernetesObservability

Scenario

A payments worker service gets OOMKilled every three to four hours under perfectly ordinary load. The memory graph is a textbook sawtooth: usage climbs steadily from startup under a 512Mi limit until the kernel kills the container, the pod restarts, and the climb begins again. Jobs are delayed around each kill but nothing fully breaks, so the pain is chronic rather than acute. Everyone quietly suspects a leak; the heap profiler that would confirm it has never been pointed at the service.

The Quick Fix on the Table

A colleague proposes the pragmatic-sounding bundle: raise the limit to 2Gi, add two more replicas, and put "investigate the leak" on the backlog for a future sprint. Kills stop today, payments flow, everyone moves on.

Interview · Round 1

The quick fix is on the table and the room is waiting for your call. Would you sign off on it? Take a position and justify it — out loud or on paper — before revealing the analysis.