From f5fdcede4bc973a0e3ac7d6dd595fb4989662278 Mon Sep 17 00:00:00 2001 From: Harry Zhang Date: Thu, 26 Apr 2018 12:10:30 -0700 Subject: [PATCH] Seperate priority and preemption (#8144) --- .../configuration/pod-priority-preemption.md | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/content/en/docs/concepts/configuration/pod-priority-preemption.md b/content/en/docs/concepts/configuration/pod-priority-preemption.md index 9564247fe1077..98e48a1405f72 100644 --- a/content/en/docs/concepts/configuration/pod-priority-preemption.md +++ b/content/en/docs/concepts/configuration/pod-priority-preemption.md @@ -59,6 +59,27 @@ scheduler. After the feature is disabled, the existing Pods keep their priority fields, but preemption is disabled, and priority fields are ignored, and you cannot set `priorityClassName` in new Pods. +## How to disable preemption + +In Kubernetes 1.11 and later, preemption is controlled by a kube-scheduler flag `disablePreemption`, which is set to `false` by default. + +If you want to disable preemption, just set `disablePreemption` to true. This will keep pod priority enabled while preemption is disabled. Here is a sample configuration: + +```yaml +apiVersion: componentconfig/v1alpha1 +kind: KubeSchedulerConfiguration +algorithmSource: + provider: DefaultProvider + +... + +disablePreemption: true + +``` + +Please note: although preemption of scheduler is enabled by default, preemption will not happen if `PodPriority` feature is not available. + + ## PriorityClass A PriorityClass is a non-namespaced object that defines a mapping from a priority