Skip to content

Commit f80dc71

Browse files
authored
kubeadm: update feature gates and add removed FGs (#42771)
* kubeadm: remove UnversionedKubeletConfigMap * kuebadm: add IPv6DualStack to removed FG * kubeadm: add EtcdLearnerMode FG descriptions
1 parent 37fe704 commit f80dc71

File tree

1 file changed

+29
-10
lines changed

1 file changed

+29
-10
lines changed

content/en/docs/reference/setup-tools/kubeadm/kubeadm-init.md

Lines changed: 29 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -159,7 +159,7 @@ Feature | Default | Alpha | Beta | GA
159159
:-------|:--------|:------|:-----|:----
160160
`PublicKeysECDSA` | `false` | 1.19 | - | -
161161
`RootlessControlPlane` | `false` | 1.22 | - | -
162-
`UnversionedKubeletConfigMap` | `true` | 1.22 | 1.23 | 1.25
162+
`EtcdLearnerMode` | `false` | 1.27 | - | -
163163
{{< /table >}}
164164

165165
{{< note >}}
@@ -179,15 +179,9 @@ for `kube-apiserver`, `kube-controller-manager`, `kube-scheduler` and `etcd` to
179179
If the flag is not set, those components run as root. You can change the value of this feature gate before
180180
you upgrade to a newer version of Kubernetes.
181181

182-
`UnversionedKubeletConfigMap`
183-
: This flag controls the name of the {{< glossary_tooltip text="ConfigMap" term_id="configmap" >}} where kubeadm stores
184-
kubelet configuration data. With this flag not specified or set to `true`, the ConfigMap is named `kubelet-config`.
185-
If you set this flag to `false`, the name of the ConfigMap includes the major and minor version for Kubernetes
186-
(for example: `kubelet-config-{{< skew currentVersion >}}`). Kubeadm ensures that RBAC rules for reading and writing
187-
that ConfigMap are appropriate for the value you set. When kubeadm writes this ConfigMap (during `kubeadm init`
188-
or `kubeadm upgrade apply`), kubeadm respects the value of `UnversionedKubeletConfigMap`. When reading that ConfigMap
189-
(during `kubeadm join`, `kubeadm reset`, `kubeadm upgrade ...`), kubeadm attempts to use unversioned ConfigMap name first;
190-
if that does not succeed, kubeadm falls back to using the legacy (versioned) name for that ConfigMap.
182+
`EtcdLearnerMode`
183+
: With this feature gate enabled, when joining a new control plane node, a new etcd member will be created
184+
as a learner and promoted to a voting member only after the etcd data are fully aligned.
191185

192186
List of deprecated feature gates:
193187

@@ -213,6 +207,31 @@ instance is upgraded. The deprecated `UpgradeAddonsBeforeControlPlane` feature g
213207
behavior. You should not need this old behavior; if you do, you should consider changing your cluster or upgrade processes, as this
214208
feature gate will be removed in a future release.
215209

210+
List of removed feature gates:
211+
212+
{{< table caption="kubeadm removed feature gates" >}}
213+
Feature | Alpha | Beta | GA | Removed
214+
:-------|:------|:-----|:---|:-------
215+
`UnversionedKubeletConfigMap` | 1.22 | 1.23 | 1.25 | 1.26
216+
`IPv6DualStack` | 1.16 | 1.21 | 1.23 | 1.24
217+
{{< /table >}}
218+
219+
Feature gate descriptions:
220+
221+
`UnversionedKubeletConfigMap`
222+
: This flag controls the name of the {{< glossary_tooltip text="ConfigMap" term_id="configmap" >}} where kubeadm stores
223+
kubelet configuration data. With this flag not specified or set to `true`, the ConfigMap is named `kubelet-config`.
224+
If you set this flag to `false`, the name of the ConfigMap includes the major and minor version for Kubernetes
225+
(for example: `kubelet-config-{{< skew currentVersion >}}`). Kubeadm ensures that RBAC rules for reading and writing
226+
that ConfigMap are appropriate for the value you set. When kubeadm writes this ConfigMap (during `kubeadm init`
227+
or `kubeadm upgrade apply`), kubeadm respects the value of `UnversionedKubeletConfigMap`. When reading that ConfigMap
228+
(during `kubeadm join`, `kubeadm reset`, `kubeadm upgrade ...`), kubeadm attempts to use unversioned ConfigMap name first;
229+
if that does not succeed, kubeadm falls back to using the legacy (versioned) name for that ConfigMap.
230+
231+
`IPv6DualStack`
232+
: This flag helps to configure components dual stack when the feature is in progress. For more details on Kubernetes
233+
dual-stack support see [Dual-stack support with kubeadm](/docs/setup/production-environment/tools/kubeadm/dual-stack-support/).
234+
216235
### Adding kube-proxy parameters {#kube-proxy}
217236

218237
For information about kube-proxy parameters in the kubeadm configuration see:

0 commit comments

Comments
 (0)