💡 Reality: The Kubernetes scheduler only considers resource requests when making scheduling decisions. Limits do NOT impact scheduling, nor does actual CPU/memory usage!
🔍 How It Actually Works:
✅ Requests define scheduling – The scheduler ensures a node has enough reserved capacity before placing a pod.
❌ Limits do NOT impact scheduling – They only affect runtime behavior (CPU throttling, OOMKills).
❌ Actual resource usage is ignored – Even if a node has free CPU/memory, if requests are already “reserved,” a new pod won’t be scheduled there.
🛠️ Why Does Kubernetes Work This Way?
-
Ensures predictable resource allocation
-
Prevents nodes from getting overloaded later
-
Avoids constant pod rescheduling, ensuring stability
🔥 Myth busted! Kubernetes scheduling is based on requests, not limits or actual usage. Misunderstanding this can lead to inefficient resource planning and unexpected scheduling issues.