Skip to content

Commit e0b6798

Browse files
authored
Merge pull request #32003 from kerthcet/feature/graduate-defaultPodTopologySpread-to-ga
feat: feature gate DefaultPodTopologySpread is GA
2 parents 0318cce + c5428eb commit e0b6798

File tree

1 file changed

+8
-22
lines changed

1 file changed

+8
-22
lines changed

content/en/docs/concepts/workloads/pods/pod-topology-spread-constraints.md

Lines changed: 8 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -4,21 +4,11 @@ content_type: concept
44
weight: 40
55
---
66

7-
{{< feature-state for_k8s_version="v1.19" state="stable" >}}
8-
<!-- leave this shortcode in place until the note about EvenPodsSpread is
9-
obsolete -->
107

118
<!-- overview -->
129

1310
You can use _topology spread constraints_ to control how {{< glossary_tooltip text="Pods" term_id="Pod" >}} are spread across your cluster among failure-domains such as regions, zones, nodes, and other user-defined topology domains. This can help to achieve high availability as well as efficient resource utilization.
1411

15-
{{< note >}}
16-
In versions of Kubernetes before v1.18, you must enable the `EvenPodsSpread`
17-
[feature gate](/docs/reference/command-line-tools-reference/feature-gates/) on
18-
the [API server](/docs/concepts/overview/components/#kube-apiserver) and the
19-
[scheduler](/docs/reference/command-line-tools-reference/kube-scheduler/) in order to use Pod
20-
topology spread constraints.
21-
{{< /note >}}
2212

2313
<!-- body -->
2414

@@ -321,21 +311,17 @@ profiles:
321311
```
322312

323313
{{< note >}}
324-
The score produced by default scheduling constraints might conflict with the
325-
score produced by the
326-
[`SelectorSpread` plugin](/docs/reference/scheduling/config/#scheduling-plugins).
327-
It is recommended that you disable this plugin in the scheduling profile when
328-
using default constraints for `PodTopologySpread`.
314+
[`SelectorSpread` plugin](/docs/reference/scheduling/config/#scheduling-plugins)
315+
is disabled by default. It's recommended to use `PodTopologySpread` to achieve similar
316+
behavior.
329317
{{< /note >}}
330318

331-
#### Internal default constraints
319+
#### Built-in default constraints {#internal-default-constraints}
332320

333-
{{< feature-state for_k8s_version="v1.20" state="beta" >}}
321+
{{< feature-state for_k8s_version="v1.24" state="stable" >}}
334322

335-
With the `DefaultPodTopologySpread` feature gate, enabled by default, the
336-
legacy `SelectorSpread` plugin is disabled.
337-
kube-scheduler uses the following default topology constraints for the
338-
`PodTopologySpread` plugin configuration:
323+
If you don't configure any cluster-level default constraints for pod topology spreading,
324+
then kube-scheduler acts as if you specified the following default topology constraints:
339325

340326
```yaml
341327
defaultConstraints:
@@ -348,7 +334,7 @@ defaultConstraints:
348334
```
349335

350336
Also, the legacy `SelectorSpread` plugin, which provides an equivalent behavior,
351-
is disabled.
337+
is disabled by default.
352338

353339
{{< note >}}
354340
The `PodTopologySpread` plugin does not score the nodes that don't have

0 commit comments

Comments
 (0)