Skip to content

Commit b27716b

Browse files
authored
Merge pull request #36062 from bergerhoffer/OSDOCS-2362
OSDOCS-2362: Adding new descheduler profiles and config
2 parents 9e8c2d0 + f910f01 commit b27716b

File tree

3 files changed

+25
-9
lines changed

3 files changed

+25
-9
lines changed

modules/nodes-descheduler-configuring-profiles.adoc

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,14 +34,18 @@ spec:
3434
logLevel: Normal
3535
managementState: Managed
3636
operatorLogLevel: Normal
37-
profiles:
38-
- AffinityAndTaints <1>
39-
- TopologyAndDuplicates <2>
40-
- LifecycleAndUtilization <3>
37+
profileCustomizations:
38+
podLifetime: 48h <1>
39+
profiles: <2>
40+
- AffinityAndTaints
41+
- TopologyAndDuplicates <3>
42+
- LifecycleAndUtilization
43+
- EvictPodsWithLocalStorage
44+
- EvictPodsWithPVC
4145
----
42-
<1> Enable the `AffinityAndTaints` profile, which evicts pods that violate inter-pod anti-affinity, node affinity, and node taints.
43-
<2> Enable the `TopologyAndDuplicates` profile, which evicts pods in an effort to evenly spread similar pods, or pods of the same topology domain, among nodes.
44-
<3> Enable the `LifecycleAndUtilization` profile, which evicts long-running pods and balances resource usage between nodes.
46+
<1> Optional: Enable a custom pod lifetime value for the `LifecycleAndUtilization` profile. Valid units are `ns`, `us`, `ms`, `s`, `m`, or `h`. The default pod lifetime is 24 hours.
47+
<2> Add one or more profiles to enable. Available profiles: `AffinityAndTaints`, `TopologyAndDuplicates`, `LifecycleAndUtilization`, `SoftTopologyAndDuplicates`, `EvictPodsWithLocalStorage`, and `EvictPodsWithPVC`.
48+
<3> Do not enable both `TopologyAndDuplicates` and `SoftTopologyAndDuplicates` because they will conflict with each other.
4549
+
4650
You can enable multiple profiles; the order that the profiles are specified in is not important.
4751

modules/nodes-descheduler-installing.adoc

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ endif::[]
3333
. Create a descheduler instance.
3434
.. From the *Operators* -> *Installed Operators* page, click the *Kube Descheduler Operator*.
3535
.. Select the *Kube Descheduler* tab and click *Create KubeDescheduler*.
36-
.. Edit the settings as necessary and click *Create*.
36+
.. Edit the settings as necessary. You can configure the descheduler profiles and customizations now or after it has been created.
37+
.. Click *Create*.
3738

3839
You can now configure the profiles for the descheduler. If you did not adjust the profiles when creating the descheduler instance from the web console, the `AffinityAndTaints` profile is enabled by default.

modules/nodes-descheduler-profiles.adoc

Lines changed: 12 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,4 +40,15 @@ A node is considered overutilized if its usage is above 50% for any of the thres
4040

4141
* `PodLifeTime`: evicts pods that are too old.
4242
+
43-
Pods that are older than 24 hours are removed.
43+
By default, pods that are older than 24 hours are removed. You can customize the pod lifetime value.
44+
45+
`SoftTopologyAndDuplicates`:: This profile is the same as `TopologyAndDuplicates`, except that pods with soft topology constraints, such as `whenUnsatisfiable: ScheduleAnyway`, are also considered for eviction.
46+
+
47+
[NOTE]
48+
====
49+
Do not enable both `SoftTopologyAndDuplicates` and `TopologyAndDuplicates` because they will conflict with each other.
50+
====
51+
52+
`EvictPodsWithLocalStorage`:: This profile allows pods with local storage to be eligible for eviction.
53+
54+
`EvictPodsWithPVC`:: This profile allows pods with persistent volume claims to be eligible for eviction.

0 commit comments

Comments
 (0)