Does the Kubernetes scheduler assign the pods to the nodes one by one in a queue (not in parallel)?
Based on this, I guess that might be the case since it is mentioned that the nodes are iterated round robin.
I want to make sure that the pod scheduling is not being done in parallel.
Short answer
Taking into consideration all the processes
kube-schedulerperforms when it's scheduling the pod, the answer is yes.Scheduler and pods
Reference - kube-scheduler.
Reference - kube-scheduler - synopsis.
In short words,
kube-schedulerpicks up pods one by one, assess them and its requests, then proceeds to finding appropriatefeasiblenodes to schedule pods on.Scheduler and nodes
Mentioned link is related to nodes to give a fair chance to run pods across all
feasiblenodes.Information here is related to default
kube-scheduler, there are solutions which can be used or even it's possible to implement self-written one. Also it's possible to run multiple schedulers in cluster.Useful links: