Limits of a PodDisruptionBudget
kubernetesWhat is a disruption
the action of preventing something, especially a system, process, or event, from continuing as usual or as expected.
– https://dictionary.cambridge.org/de/worterbuch/englisch/disruption
Kubernetes differentiates between 2 kinds of disruptions:
- involuntary (Outside the control of Kubernetes)
- hardware failure
- kernel panic
- etc.
- voluntary (controlled using Kubernetes mechanisms)
- draining a node (repair, upgrade, scale down)
- priority based eviction (to allow other, high priority pods to be scheduled instead)
- Deployment,StatefulSet,DaemonSet, etc. update
- deleting a pod
Kubernetes will try to move pods from unhealthy to healthy nodes when encountering involuntary disruptions. For voluntary disruptions, Kubernetes provides APIs to control how many pods for a given selector can be disrupted simultaneously.
Read more...