How the kubernetes makes decision which pod to install during an application installation?

4/23/2019

I am aware that kubernetes has the concept of pod ordering. Reference: https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/

I want to know how kubernetes orders pods by default and their scheduling algorithm, when the ordering is not explicitly mentioned by users. I see that the ordering is not in the order provided by users and its random.

-- Malar Kandasamy
kubernetes
pod

1 Answer

4/23/2019

Kubernetes by default does not have pod priorities. It has different thing (even more important actually) which is called Pod Quality of Service. In general it defines how much time pod is running without external interruptions. There are 3 QoS types:

  1. Guaranteed. These pods are immune to eviction and never get killed due to node resource starvation as long as they are not exceeding their limits.
  2. Burstable. These pods can be evicted and killed only if they exceed their requests and there are no Best Effort candidate pods.
  3. Best Effort. These pods are the lowest priority and will get killed as soon as there is node resource starvation.
-- Vasily Angapov
Source: StackOverflow