@@ -95,9 +95,9 @@ following steps:
95
95
token via `--token`, as described in the
96
96
[kubeadm token](/docs/reference/setup-tools/kubeadm/kubeadm-token/) docs.
97
97
-->
98
- 6 . 生成令牌,将来其他节点可使用该令牌向控制平面注册自己。
99
- 如 [ kubeadm token] ( /zh-cn/docs/reference/setup-tools/kubeadm/kubeadm-token/ ) 文档所述,
100
- 用户可以选择通过 ` --token ` 提供令牌。
98
+ 6 . 生成令牌,将来其他节点可使用该令牌向控制平面注册自己。如
99
+ [ kubeadm token] ( /zh-cn/docs/reference/setup-tools/kubeadm/kubeadm-token/ )
100
+ 文档所述, 用户可以选择通过 ` --token ` 提供令牌。
101
101
102
102
<!--
103
103
1. Makes all the necessary configurations for allowing node joining with the
@@ -152,7 +152,8 @@ Kubeadm allows you to create a control-plane node in phases using the `kubeadm i
152
152
Kubeadm 允许你使用 ` kubeadm init phase ` 命令分阶段创建控制平面节点。
153
153
154
154
<!--
155
- To view the ordered list of phases and sub-phases you can call `kubeadm init -help`. The list will be located at the top of the help screen and each phase will have a description next to it.
155
+ To view the ordered list of phases and sub-phases you can call `kubeadm init -help`.
156
+ The list will be located at the top of the help screen and each phase will have a description next to it.
156
157
Note that by calling `kubeadm init` all of the phases and sub-phases will be executed in this exact order.
157
158
-->
158
159
要查看阶段和子阶段的有序列表,可以调用 ` kubeadm init --help ` 。
@@ -255,8 +256,8 @@ For more information on the fields and usage of the configuration you can naviga
255
256
可以使用 [ kubeadm config print] ( /zh-cn/docs/reference/setup-tools/kubeadm/kubeadm-config/ )
256
257
命令打印出默认配置。
257
258
258
- 如果你的配置没有使用最新版本,
259
- ** 推荐 ** 使用 [ kubeadm config migrate] ( /zh-cn/docs/reference/setup-tools/kubeadm/kubeadm-config/ )
259
+ 如果你的配置没有使用最新版本,** 推荐 ** 使用
260
+ [ kubeadm config migrate] ( /zh-cn/docs/reference/setup-tools/kubeadm/kubeadm-config/ )
260
261
命令进行迁移。
261
262
262
263
关于配置的字段和用法的更多信息,你可以访问 [ API 参考页面] ( /zh-cn/docs/reference/config-api/kubeadm-config.v1beta3/ ) 。
@@ -282,7 +283,8 @@ using `--config`.
282
283
-->
283
284
你可以使用 ` --feature-gates ` 标志来为 ` kubeadm init ` 设置特性门控,
284
285
或者你可以在用 ` --config `
285
- 传递[ 配置文件] ( /zh-cn/docs/reference/config-api/kubeadm-config.v1beta3/#kubeadm-k8s-io-v1beta3-ClusterConfiguration ) 时添加条目到 ` featureGates ` 字段中。
286
+ 传递[ 配置文件] ( /zh-cn/docs/reference/config-api/kubeadm-config.v1beta3/#kubeadm-k8s-io-v1beta3-ClusterConfiguration ) 时添加条目到
287
+ ` featureGates ` 字段中。
286
288
287
289
<!--
288
290
Passing [feature gates for core Kubernetes components](/docs/reference/command-line-tools-reference/feature-gates)
@@ -303,15 +305,15 @@ Feature | Default | Alpha | Beta | GA
303
305
:-------|:--------|:------|:-----|:----
304
306
`PublicKeysECDSA` | `false` | 1.19 | - | -
305
307
`RootlessControlPlane` | `false` | 1.22 | - | -
306
- `UnversionedKubeletConfigMap ` | `true ` | 1.22 | 1.23 | 1.25
308
+ `EtcdLearnerMode ` | `false ` | 1.27 | - | -
307
309
{{< /table >}}
308
310
-->
309
311
{{< table caption="kubeadm 特性门控" >}}
310
312
特性 | 默认值 | Alpha | Beta | GA
311
313
:-------|:--------|:------|:-----|:----
312
314
` PublicKeysECDSA ` | ` false ` | 1.19 | - | -
313
315
` RootlessControlPlane ` | ` false ` | 1.22 | - | -
314
- ` UnversionedKubeletConfigMap ` | ` true ` | 1.22 | 1.23 | 1.25
316
+ ` EtcdLearnerMode ` | ` false ` | 1.27 | - | -
315
317
{{< /table >}}
316
318
317
319
{{< note >}}
@@ -346,32 +348,18 @@ you upgrade to a newer version of Kubernetes.
346
348
-->
347
349
` RootlessControlPlane `
348
350
: 设置此标志来配置 kubeadm 所部署的控制平面组件中的静态 Pod 容器
349
- ` kube-apiserver ` 、` kube-controller-manager ` 、` kube-scheduler ` 和 ` etcd ` 以非 root 用户身份运行。
350
- 如果未设置该标志,则这些组件以 root 身份运行。
351
+ ` kube-apiserver ` 、` kube-controller-manager ` 、` kube-scheduler ` 和 ` etcd `
352
+ 以非 root 用户身份运行。 如果未设置该标志,则这些组件以 root 身份运行。
351
353
你可以在升级到更新版本的 Kubernetes 之前更改此特性门控的值。
352
354
353
355
<!--
354
- `UnversionedKubeletConfigMap`
355
- : This flag controls the name of the {{< glossary_tooltip text="ConfigMap" term_id="configmap" >}} where kubeadm stores
356
- kubelet configuration data. With this flag not specified or set to `true`, the ConfigMap is named `kubelet-config`.
357
- If you set this flag to `false`, the name of the ConfigMap includes the major and minor version for Kubernetes
358
- (for example: `kubelet-config-{{< skew currentVersion >}}`). Kubeadm ensures that RBAC rules for reading and writing
359
- that ConfigMap are appropriate for the value you set. When kubeadm writes this ConfigMap (during `kubeadm init`
360
- or `kubeadm upgrade apply`), kubeadm respects the value of `UnversionedKubeletConfigMap`. When reading that ConfigMap
361
- (during `kubeadm join`, `kubeadm reset`, `kubeadm upgrade ...`), kubeadm attempts to use unversioned ConfigMap name first;
362
- if that does not succeed, kubeadm falls back to using the legacy (versioned) name for that ConfigMap.
356
+ `EtcdLearnerMode`
357
+ : With this feature gate enabled, when joining a new control plane node, a new etcd member will be created
358
+ as a learner and promoted to a voting member only after the etcd data are fully aligned.
363
359
-->
364
- ` UnversionedKubeletConfigMap `
365
- : 此标志控制 kubeadm 存储 kubelet 配置数据的 {{<glossary_tooltip text="ConfigMap" term_id="configmap" >}} 的名称。
366
- 在未指定此标志或设置为 ` true ` 的情况下,此 ConfigMap 被命名为 ` kubelet-config ` 。
367
- 如果将此标志设置为 ` false ` ,则此 ConfigMap 的名称会包括 Kubernetes 的主要版本和次要版本
368
- (例如:` kubelet-config-{{< skew currentVersion >}} ` )。
369
- kubeadm 会确保用于读写 ConfigMap 的 RBAC 规则适合你设置的值。
370
- 当 kubeadm 写入此 ConfigMap 时(在 ` kubeadm init ` 或 ` kubeadm upgrade apply ` 期间),
371
- kubeadm 根据 ` UnversionedKubeletConfigMap ` 的设置值来执行操作。
372
- 当读取此 ConfigMap 时(在 ` kubeadm join ` 、` kubeadm reset ` 、` kubeadm upgrade ... ` 期间),
373
- kubeadm 尝试首先使用无版本(后缀)的 ConfigMap 名称;
374
- 如果不成功,kubeadm 将回退到使用该 ConfigMap 的旧(带版本号的)名称。
360
+ ` EtcdLearnerMode `
361
+ : 启用此特性门控后,当加入新的控制平面节点时,将创建一个新的 etcd
362
+ 成员作为学习者(learner),并仅在 etcd 数据完全对齐后进级为投票成员(voting member)。
375
363
376
364
<!--
377
365
List of deprecated feature gates:
@@ -418,7 +406,7 @@ you should consider changing your cluster or upgrade processes, as this
418
406
feature gate will be removed in a future release.
419
407
-->
420
408
` UpgradeAddonsBeforeControlPlane `
421
- : 这是一个在 Kubernetes v1.28 中引入的默认禁用的特性门控 ,
409
+ : 这是一个在 Kubernetes v1.28 中引入的默认 ** 禁用 ** 的特性门控 ,
422
410
目的是在集群升级期间允许重新激活旧版且已弃用的行为。对于早于 v1.28 的 kubeadm 版本,
423
411
在 ` kubeadm upgrade apply ` 期间会立即升级集群插件(包括 CoreDNS 和 kube-proxy),
424
412
而不管是否有其他未升级的控制平面实例。这可能导致兼容性问题。从 v1.28 开始,
@@ -432,6 +420,58 @@ feature gate will be removed in a future release.
432
420
你不应该需要这种旧的行为;如果确实需要,请考虑更改集群或升级流程,
433
421
因为此特性门控将在未来的版本中被移除。
434
422
423
+ <!--
424
+ List of removed feature gates:
425
+ -->
426
+ 已移除的特性门控列表:
427
+
428
+ <!--
429
+ {{< table caption="kubeadm removed feature gates" >}}
430
+ Feature | Alpha | Beta | GA | Removed
431
+ :-------|:------|:-----|:---|:-------
432
+ `UnversionedKubeletConfigMap` | 1.22 | 1.23 | 1.25 | 1.26
433
+ `IPv6DualStack` | 1.16 | 1.21 | 1.23 | 1.24
434
+ {{< /table >}}
435
+ -->
436
+ {{< table caption="kubeadm 已移除的特性门控" >}}
437
+ 特性 | Alpha | Beta | GA | 移除
438
+ :-------|:------|:-----|:---|:-------
439
+ ` UnversionedKubeletConfigMap ` | 1.22 | 1.23 | 1.25 | 1.26
440
+ ` IPv6DualStack ` | 1.16 | 1.21 | 1.23 | 1.24
441
+ {{< /table >}}
442
+
443
+ <!--
444
+ `UnversionedKubeletConfigMap`
445
+ : This flag controls the name of the {{< glossary_tooltip text="ConfigMap" term_id="configmap" >}} where kubeadm stores
446
+ kubelet configuration data. With this flag not specified or set to `true`, the ConfigMap is named `kubelet-config`.
447
+ If you set this flag to `false`, the name of the ConfigMap includes the major and minor version for Kubernetes
448
+ (for example: `kubelet-config-{{< skew currentVersion >}}`). Kubeadm ensures that RBAC rules for reading and writing
449
+ that ConfigMap are appropriate for the value you set. When kubeadm writes this ConfigMap (during `kubeadm init`
450
+ or `kubeadm upgrade apply`), kubeadm respects the value of `UnversionedKubeletConfigMap`. When reading that ConfigMap
451
+ (during `kubeadm join`, `kubeadm reset`, `kubeadm upgrade ...`), kubeadm attempts to use unversioned ConfigMap name first;
452
+ if that does not succeed, kubeadm falls back to using the legacy (versioned) name for that ConfigMap.
453
+ -->
454
+ ` UnversionedKubeletConfigMap `
455
+ : 此标志控制 kubeadm 存储 kubelet 配置数据的 {{<glossary_tooltip text="ConfigMap" term_id="configmap" >}} 的名称。
456
+ 在未指定此标志或设置为 ` true ` 的情况下,此 ConfigMap 被命名为 ` kubelet-config ` 。
457
+ 如果将此标志设置为 ` false ` ,则此 ConfigMap 的名称会包括 Kubernetes 的主要版本和次要版本
458
+ (例如:` kubelet-config-{{< skew currentVersion >}} ` )。
459
+ kubeadm 会确保用于读写 ConfigMap 的 RBAC 规则适合你设置的值。
460
+ 当 kubeadm 写入此 ConfigMap 时(在 ` kubeadm init ` 或 ` kubeadm upgrade apply ` 期间),
461
+ kubeadm 根据 ` UnversionedKubeletConfigMap ` 的设置值来执行操作。
462
+ 当读取此 ConfigMap 时(在执行 ` kubeadm join ` 、` kubeadm reset ` 、` kubeadm upgrade ` 等操作期间),
463
+ kubeadm 尝试首先使用无版本(后缀)的 ConfigMap 名称;
464
+ 如果不成功,kubeadm 将回退到使用该 ConfigMap 的旧(带版本号的)名称。
465
+
466
+ <!--
467
+ `IPv6DualStack`
468
+ : This flag helps to configure components dual stack when the feature is in progress. For more details on Kubernetes
469
+ dual-stack support see [Dual-stack support with kubeadm](/docs/setup/production-environment/tools/kubeadm/dual-stack-support/).
470
+ -->
471
+ ` IPv6DualStack `
472
+ : 当前此特性正在推进时,此标志有助于配置组件的 IP 双栈。有关 Kubernetes
473
+ 双栈支持的更多详细信息,请参阅 [ kubeadm 的双栈支持] ( /zh-cn/docs/setup/production-environment/tools/kubeadm/dual-stack-support/ ) 。
474
+
435
475
<!--
436
476
### Adding kube-proxy parameters {#kube-proxy}
437
477
@@ -594,7 +634,8 @@ kubeadm init phase upload-certs --upload-certs --config=SOME_YAML_FILE
594
634
```
595
635
{{< note >}}
596
636
<!--
597
- A predefined `certificateKey` can be provided in `InitConfiguration` when passing the [configuration file](https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/) with `--config`.
637
+ A predefined `certificateKey` can be provided in `InitConfiguration` when passing the
638
+ [configuration file](https://kubernetes.io/docs/reference/config-api/kubeadm-config.v1beta3/) with `--config`.
598
639
-->
599
640
在使用 ` --config `
600
641
传递[ 配置文件] ( https://kubernetes.io/zh-cn/docs/reference/config-api/kubeadm-config.v1beta3/ ) 时,
0 commit comments