Skip to content
ENExplore Calculators

Pod Eviction Calculator

Estimate which pods are at risk of eviction under node memory or disk pressure.

About Pod Eviction Calculator

When a node comes under CPU, memory, or disk pressure, the kubelet evicts pods in a defined order: BestEffort pods (no requests/limits) go first since they have no reserved resources to protect them, then Burstable pods ranked partly by PriorityClass and by how far their usage exceeds their requests, and Guaranteed pods (requests equal limits) go last, evicted only under the most extreme pressure. PriorityClass acts as a tiebreaker within and across these QoS bands, letting critical low-QoS pods still be protected relative to non-critical pods of the same class.

Formula

elevatedRisk% = ((bestEffortPods + lowPriorityBurstable) / totalPods) × 100

B_e
BestEffort pods (evicted first)
B_l
Low-priority Burstable pods
N
Total pods on the node
E
Percentage of pods at elevated eviction risk

Worked example

With the default values below, Pod Eviction Calculator returns Pods at Elevated Eviction Risk of 44.8%. Change any input above and every figure here is recalculated in your browser.

Inputs used

BestEffort Podsaccepts 0–1,000,000 pods
8 pods
Burstable Podsaccepts 0–1,000,000 pods
15 pods
Guaranteed Podsaccepts 0–1,000,000 pods
6 pods
Burstable Pods at Low Priority Classaccepts 0–100 %
30 %

Results

Pods at Elevated Eviction Risk
44.8%
BestEffort Pods (Evicted First)
8 pods
Guaranteed Pods (Evicted Last)
6 pods

Step by step

  1. 1Low-priority Burstable pods= 5
  2. 2Pods at elevated eviction risk= 44.8%

Assumptions and limits

  • The result is derived only from the 4 inputs listed above. Anything not among them is not part of the calculation.
  • In particular, this calculator does not take inflation, tax, fees or charges or compounding frequency into account.
  • Figures are rounded for display to 1 decimal place, so totals built from several rounded parts can differ slightly from the unrounded arithmetic.

How these calculators are built and tested is described on the Methodology page. If a figure looks wrong, please report it.

Frequently Asked Questions

What determines a pod's QoS class?

It's derived automatically from its resource spec: Guaranteed requires CPU and memory requests to equal limits for every container; BestEffort has no requests or limits set at all; Burstable is everything in between — you cannot set QoS class directly.

Can a high-priority BestEffort pod avoid eviction before a low-priority Guaranteed pod?

Under standard node-pressure eviction, QoS class is the primary sort key — BestEffort pods are generally evicted before Burstable and Guaranteed pods regardless of PriorityClass, though PriorityClass does influence scheduling preemption separately from kubelet eviction.

How can I protect a critical Burstable pod from early eviction?

Set requests closer to (or equal to) actual usage/limits to shift it toward Guaranteed QoS, and assign it a higher PriorityClass — both reduce its relative eviction risk compared to lower-priority or under-provisioned pods on the same node.

Pod Eviction Calculator | Calcrivo