I'm trying to get a better view 'under the hood' of how the Kubernetes Pod scheduling and creation process works, with respect to the interaction between kubelet and kube-apiserver.
I understand that the Kubernetes scheduler chooses a node to allocate a new pod to and notifies the API server of this. However, I am unclear how the API server notifies the kubelet on the node in question to start the pod. Is there a polling process within kubelet that queries the API server for changes? Or is there an event listener / call-back type interaction?
If anyone knows the answer or could point me in the direction of some documentation that would be greatly appreciated!