Kubernetes Scheduling Architecture

Kubernetes Scheduling Architecture An architecture diagram generated by Archify. API Server · unscheduled pods · Architecture component API Server unscheduled pods Scheduling Queue · QueueSort · Scheduling components and phases Scheduling Queue QueueSort kube-scheduler · plugin framework · Scheduling components and phases kube-scheduler plugin framework Node & Pod Cache · node and pod state · Scheduling components and phases Node & Pod Cache node and pod state Filtering · PreFilter · Filter · Scheduling components and phases Filtering PreFilter · Filter Scoring · PreScore · Score · Scheduling components and phases Scoring PreScore · Score Binding · Reserve · Permit · Bind · Scheduling components and phases Binding Reserve · Permit · Bind Descheduler · rebalances running pods · Constraints, preemption and eviction Descheduler rebalances running pods Pod Disruption Budget · PodDisruptionBudget · Constraints, preemption and eviction Pod Disruption Budget PodDisruptionBudget Priority & Preemption · PriorityClass · Constraints, preemption and eviction Priority & Preemption PriorityClass Scheduling Constraints · selector · affinity · taints · spread · Constraints, preemption and eviction Scheduling Constraints selector · affinity · taints · spread watch pods read node/pod state run plugins preempt filter rules spread preference respects PDB evict → reschedule Scheduling components and phases Constraints, preemption and eviction