File tree Expand file tree Collapse file tree 1 file changed +12
-2
lines changed Expand file tree Collapse file tree 1 file changed +12
-2
lines changed Original file line number Diff line number Diff line change @@ -85,10 +85,13 @@ them suitable to provide default spreading constraints for all workloads in thei
85
85
` pod.spec.topologySpreadConstraints ` .
86
86
- Workloads are spread with the default constraints if they belong to the same service, replication controller,
87
87
replica set or stateful set, and if they don't define ` pod.spec.topologySpreadConstraints ` .
88
+ - Provide a k8s default for ` topologySpreadConstraints ` that produces a priority equivalent to
89
+ ` SelectorSpreadPriority ` , so that this algorithm can be removed from the default algorithms' provider.
88
90
89
91
### Non-Goals
90
92
91
- - Removal of ` SelectorSpreadPriority ` , ` ServiceSpreadingPriority ` or ` ServiceAntiAffinity ` priorities.
93
+ - Set defaults for specific namespaces or according to other selectors.
94
+ - Removal of ` ServiceSpreadingPriority ` or ` ServiceAntiAffinity ` priorities.
92
95
93
96
## Proposal
94
97
@@ -281,4 +284,11 @@ Alpha (v1.17):
281
284
While this moves the scheduler in the right direction, there are two problems :
282
285
283
286
1. We can only support one topology key.
284
- 1. It makes it hard for pods to override the operator-provided spreading rules.
287
+ 1. It makes it hard for pods to override the operator-provided spreading rules.
288
+
289
+ - Implement a mutating controller that sets defaults.
290
+
291
+ This approach would likely allow us to provide a more flexible interface that
292
+ can set defaults for specific namespaces or with other selectors. However, that
293
+ wouldn't allow us to replace `SelectorSpreadingPriority` with
294
+ ` EvenPodsSpreading` .
You can’t perform that action at this time.
0 commit comments