Descheduler Rebalancing Process and Strategies

Descheduler Rebalancing Process and Strategies An architecture diagram generated by Archify. Initial state · Evenly distributed · Why the Descheduler is needed Initial state Evenly distributed Change event · Node add/remove, pod change · Why the Descheduler is needed Change event Node add/remove, pod change Imbalanced state · Distribution skewed · Why the Descheduler is needed Imbalanced state Distribution skewed Descheduler · Evicts running pods · Why the Descheduler is needed Descheduler Evicts running pods Rebalanced state · Scheduler re-places pods · Why the Descheduler is needed Rebalanced state Scheduler re-places pods RemoveDuplicates · Remove duplicate pods · Descheduler strategies RemoveDuplicates Remove duplicate pods LowNodeUtilization · Move to underutilized nodes · Descheduler strategies LowNodeUtilization Move to underutilized nodes RemovePodsHavingTooManyRestarts · Remove pods with too many restarts · Descheduler strategies RemovePodsHavingTooManyRestarts Remove pods with too many restarts PodLifeTime · Remove pods past max lifetime · Descheduler strategies PodLifeTime Remove pods past max lifetime RemovePodsViolatingNodeAffinity · Remove node-affinity violators · Descheduler strategies RemovePodsViolatingNodeAffinity Remove node-affinity violators RemovePodsViolatingTopologySpreadConstraint · Remove TSC violators · Descheduler strategies RemovePodsViolatingTopologySpreadConstraint Remove TSC violators causes evict reschedule Why the Descheduler is needed Descheduler strategies Legend Cluster state Descheduler Strategies Change event