You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/en/docs/reference/scheduling/policies.md
+3-93Lines changed: 3 additions & 93 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -6,104 +6,14 @@ weight: 10
6
6
7
7
<!-- overview -->
8
8
9
-
A scheduling Policy can be used to specify the *predicates* and *priorities*
10
-
that the {{< glossary_tooltip text="kube-scheduler" term_id="kube-scheduler" >}}
11
-
runs to [filter and score nodes](/docs/concepts/scheduling-eviction/kube-scheduler/#kube-scheduler-implementation),
12
-
respectively.
9
+
In Kubernetes versions before v1.23, a scheduling policy can be used to specify the *predicates* and *priorities* process. For example, you can set a scheduling policy by
10
+
running `kube-scheduler --policy-config-file <filename>` or `kube-scheduler --policy-configmap <ConfigMap>`.
13
11
14
-
You can set a scheduling policy by running
15
-
`kube-scheduler --policy-config-file <filename>` or
16
-
`kube-scheduler --policy-configmap <ConfigMap>`
17
-
and using the [Policy type](/docs/reference/config-api/kube-scheduler-policy-config.v1/).
18
-
19
-
<!-- body -->
20
-
21
-
## Predicates
22
-
23
-
The following *predicates* implement filtering:
24
-
25
-
-`PodFitsHostPorts`: Checks if a Node has free ports (the network protocol kind)
26
-
for the Pod ports the Pod is requesting.
27
-
28
-
-`PodFitsHost`: Checks if a Pod specifies a specific Node by its hostname.
29
-
30
-
-`PodFitsResources`: Checks if the Node has free resources (eg, CPU and Memory)
31
-
to meet the requirement of the Pod.
32
-
33
-
-`MatchNodeSelector`: Checks if a Pod's Node {{< glossary_tooltip term_id="selector" >}}
34
-
matches the Node's {{< glossary_tooltip text="label(s)" term_id="label" >}}.
35
-
36
-
-`NoVolumeZoneConflict`: Evaluate if the {{< glossary_tooltip text="Volumes" term_id="volume" >}}
37
-
that a Pod requests are available on the Node, given the failure zone restrictions for
38
-
that storage.
39
-
40
-
-`NoDiskConflict`: Evaluates if a Pod can fit on a Node due to the volumes it requests,
41
-
and those that are already mounted.
42
-
43
-
-`MaxCSIVolumeCount`: Decides how many {{< glossary_tooltip text="CSI" term_id="csi" >}}
44
-
volumes should be attached, and whether that's over a configured limit.
45
-
46
-
-`PodToleratesNodeTaints`: checks if a Pod's {{< glossary_tooltip text="tolerations" term_id="toleration" >}}
47
-
can tolerate the Node's {{< glossary_tooltip text="taints" term_id="taint" >}}.
48
-
49
-
-`CheckVolumeBinding`: Evaluates if a Pod can fit due to the volumes it requests.
This scheduling policy is not supported since Kubernetes v1.23. Associated flags `policy-config-file`, `policy-configmap`, `policy-configmap-namespace` and `use-legacy-policy-config` are also not supported. Instead, use the [Scheduler Configuration](/docs/reference/scheduling/config/) to achieve similar behavior.
102
13
103
14
## {{% heading "whatsnext" %}}
104
15
105
16
* Learn about [scheduling](/docs/concepts/scheduling-eviction/kube-scheduler/)
106
17
* Learn about [kube-scheduler Configuration](/docs/reference/scheduling/config/)
107
18
* Read the [kube-scheduler configuration reference (v1beta2)](/docs/reference/config-api/kube-scheduler-config.v1beta2)
108
19
* Read the [kube-scheduler Policy reference (v1)](/docs/reference/config-api/kube-scheduler-policy-config.v1/)
0 commit comments