Skip to content
Latchkey

Kubernetes "Insufficient ephemeral-storage" FailedScheduling in CI

The scheduler could not place the pod because no node has enough free ephemeral (local scratch) storage to satisfy its requests.ephemeral-storage. It is the disk analogue of the cpu/memory insufficiency - the pod stays Pending until a node with room exists.

What this error means

A pod is stuck Pending with a FailedScheduling event: 0/N nodes are available: N Insufficient ephemeral-storage. The request for local disk exceeds what any node can currently offer.

kubectl describe pod
Warning  FailedScheduling  default-scheduler  0/3 nodes are available:
3 Insufficient ephemeral-storage.

Common causes

ephemeral-storage request larger than node free disk

The pod requests more local scratch storage than any node has free (existing pods plus this request exceed allocatable ephemeral-storage), so none can host it.

Small node disks or filled scratch space

Nodes with small root/scratch volumes, or disks already consumed by images/logs/other pods, leave too little allocatable ephemeral-storage for the request.

How to fix it

Compare the request to node ephemeral-storage

See the pod’s ephemeral-storage request against what nodes have allocatable.

Terminal
kubectl get pod <pod> -o jsonpath='{.spec.containers[*].resources.requests.ephemeral-storage}'; echo
kubectl describe nodes | grep -i ephemeral-storage

Right-size the request or add disk

  1. Lower requests.ephemeral-storage to the workload’s real scratch need.
  2. Move large scratch/temp data to a PVC (emptyDir on a volume / persistent volume) instead of node ephemeral storage.
  3. Use nodes with larger local disks, or free space (prune images/logs) on existing nodes.

How to prevent it

  • Base requests.ephemeral-storage on measured scratch usage, not guesses.
  • Keep large temp/data off the container filesystem; use a PVC.
  • Size node disks for peak image + scratch + log footprint.

Frequently asked questions

What causes ""Insufficient ephemeral-storage""?
The pod requests more local scratch storage than any node has free (existing pods plus this request exceed allocatable ephemeral-storage), so none can host it.
How do I fix "Insufficient ephemeral-storage"?
See the pod’s ephemeral-storage request against what nodes have allocatable.

Related guides

References

Latchkey auto-heals failures like this one - detected, fixed, and retried without you. Start free → 30-day trial · No credit card