Member-only story
DevOps in K8s — kube-scheduler
Note, full “DevOps in K8s” mind map is available at: “DevOps in K8s Mind Map”
What is kube-scheduler
kube-scheduler
is a key component of K8s that is responsible for selecting the optimal node to run a Pod on, once it has been created. In technical terms, it's responsible for pod placement based on a variety of factors.
The main functionalities of kube-scheduler
includes:
How Does kube-scheduler Work?
kube-scheduler
is an independent binary program. After starting, it continuously listens to the API Server, retrieves Pods with an empty PodSpec.NodeName
, and creates a binding for each Pod.
Its working process can be broadly divided into a few phases: Filtering
, Scoring
, and Binding
.