# Pod status: Evicted — The node was low on resource: disk-pressure

- **ID:** `kubernetes/pod-evicted-due-to-disk-pressure`
- **Domain:** kubernetes
- **Category:** resource_error
- **Verification:** ai_generated
- **Fix Rate:** 88%

## Root Cause

The node's disk usage exceeded a threshold (e.g., 85% or 90%), triggering the kubelet to evict pods to free space.

## Version Compatibility

| Version | Status | Introduced | Deprecated |
|---------|--------|------------|------------|
| kubernetes 1.26 | active | — | — |
| kubernetes 1.27 | active | — | — |
| kubernetes 1.28 | active | — | — |

## Workarounds

1. **SSH into the node and run `df -h` to identify full partitions. Clean up by removing unused container images: `docker system prune -a` or `crictl rmi --prune`. Also check and remove old logs: `journalctl --vacuum-size=500M`.** (90% success)
   ```
   SSH into the node and run `df -h` to identify full partitions. Clean up by removing unused container images: `docker system prune -a` or `crictl rmi --prune`. Also check and remove old logs: `journalctl --vacuum-size=500M`.
   ```
2. **Use node affinity or taints to move the workload to a node with sufficient disk: `kubectl taint nodes node1 disk-pressure=true:NoSchedule` then reschedule the pod on another node.** (85% success)
   ```
   Use node affinity or taints to move the workload to a node with sufficient disk: `kubectl taint nodes node1 disk-pressure=true:NoSchedule` then reschedule the pod on another node.
   ```

## Dead Ends

- **** — The pod will be evicted again immediately if the node's disk pressure persists. (95% fail)
- **** — Raising thresholds can lead to node instability and data loss; it only delays the problem. (60% fail)
- **** — Restarting kubelet doesn't free disk space; the underlying disk usage issue remains. (90% fail)
