From 63fdb54c67124e55b4585cd47fe26e242f523934 Mon Sep 17 00:00:00 2001 From: Harry Zhang Date: Mon, 23 Apr 2018 14:52:27 -0700 Subject: [PATCH] Seperate priority and preemption --- .../configuration/pod-priority-preemption.md | 21 +++++++++++++++++++ 1 file changed, 21 insertions(+) diff --git a/docs/concepts/configuration/pod-priority-preemption.md b/docs/concepts/configuration/pod-priority-preemption.md index dc482b11e1681..5db3b4624a314 100644 --- a/docs/concepts/configuration/pod-priority-preemption.md +++ b/docs/concepts/configuration/pod-priority-preemption.md @@ -57,6 +57,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