How kubelet schduler work?

4/13/2018

I have understood how Kubernetes scheduler works. The kubernetes scheduler only create and assign pods, but the actually running pod is the kubelet's job.

How kubelet schedules the containers in the pods? (Handler request from outside). Is it the same thing like linux select/epoll model?

-- Jing
kubelet
kubernetes
scheduler

1 Answer

4/13/2018

Epoll is a Linux kernel API for linear scalability which allows you to manage huge amounts of parallel connections with small amount of worker processes comparing to classical one-thread per connection. It is hard to compare it to another way of pods distribution.

Kubelet scheduler ensures that pods are only placed on nodes that have sufficient free resources. It ties to spread pods from the same nameset across nodes and tries to balance out the resource utilization of nodes.

Kubelet offers several models of scheduling pods creation:

  • node affinity/anti-affinity

  • taints and tolerations

  • pod affinity/anti-affinity

  • and custom schedulers

For more detailed information about Kubernetes scheduler, please visit documentation.

I found this blog entry practical for deploying pods.

-- d0bry
Source: StackOverflow