Skip to content

Commit 59a57f6

Browse files
committed
sync taint-and-toleration kubelet-integration
Update kubelet-integration.md
1 parent dc65a41 commit 59a57f6

File tree

2 files changed

+27
-8
lines changed

2 files changed

+27
-8
lines changed

content/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration.md

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -511,6 +511,18 @@ This ensures that DaemonSet pods are never evicted due to these problems.
511511

512512
这保证了出现上述问题时 DaemonSet 中的 Pod 永远不会被驱逐。
513513

514+
{{< note >}}
515+
<!--
516+
The node controller was responsible for adding taints to nodes and evicting pods. But after 1.29,
517+
the taint-based eviction implementation has been moved out of node controller into a separate,
518+
and independent component called taint-eviction-controller. Users can optionally disable taint-based
519+
eviction by setting `--controllers=-taint-eviction-controller` in kube-controller-manager.
520+
-->
521+
在 1.29 之前,节点控制器负责为节点添加污点并驱逐 Pod。自 1.29 起,
522+
基于污点的驱逐已从节点控制器中抽离,迁移为一个名为 taint-eviction-controller 的独立组件。
523+
用户如需禁用基于污点的驱逐,可在 kube-controller-manager 中设置 `--controllers=-taint-eviction-controller`。
524+
{{< /note >}}
525+
514526
<!--
515527
## Taint Nodes by Condition
516528

content/zh-cn/docs/setup/production-environment/tools/kubeadm/kubelet-integration.md

Lines changed: 15 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -190,15 +190,20 @@ for more details.
190190

191191
<!--
192192
When you call `kubeadm init`, the kubelet configuration is marshalled to disk
193-
at `/var/lib/kubelet/config.yaml`, and also uploaded to a `kubelet-config` ConfigMap in the `kube-system`
194-
namespace of the cluster. A kubelet configuration file is also written to `/etc/kubernetes/kubelet.conf`
193+
at `/var/lib/kubelet/config.yaml`, and also uploaded to a `kubelet-config`
194+
ConfigMap in the `kube-system` namespace of the cluster.
195+
Additionally, the kubeadm tool detects the CRI socket on the node and writes its details
196+
(including the socket path) into a local configuration, `/var/lib/kubelet/instance-config.yaml`.
197+
A kubelet configuration file is also written to `/etc/kubernetes/kubelet.conf`
195198
with the baseline cluster-wide configuration for all kubelets in the cluster. This configuration file
196199
points to the client certificates that allow the kubelet to communicate with the API server. This
197200
addresses the need to
198201
[propagate cluster-level configuration to each kubelet](#propagating-cluster-level-configuration-to-each-kubelet).
199202
-->
200203
当调用 `kubeadm init` 时,kubelet 的配置会被写入磁盘 `/var/lib/kubelet/config.yaml`,
201204
并上传到集群 `kube-system` 命名空间的 `kubelet-config` ConfigMap。
205+
此外,kubeadm 工具会在节点上检测 CRI 套接字,
206+
并将其详细信息(包括套接字路径)写入本地配置文件 `/var/lib/kubelet/instance-config.yaml`。
202207
kubelet 配置信息也被写入 `/etc/kubernetes/kubelet.conf`,其中包含集群内所有 kubelet 的基线配置。
203208
此配置文件指向允许 kubelet 与 API 服务器通信的客户端证书。
204209
这解决了[将集群级配置传播到每个 kubelet](#propagating-cluster-level-configuration-to-each-kubelet) 的需求。
@@ -219,11 +224,9 @@ KUBELET_KUBEADM_ARGS="--flag1=value1 --flag2=value2 ..."
219224

220225
<!--
221226
In addition to the flags used when starting the kubelet, the file also contains dynamic
222-
parameters such as the cgroup driver and whether to use a different container runtime socket
223-
(`--cri-socket`).
227+
parameters such as the cgroup driver.
224228
-->
225-
除了启动 kubelet 时所使用的标志外,该文件还包含动态参数,例如 cgroup
226-
驱动程序以及是否使用其他容器运行时套接字(`--cri-socket`)。
229+
除了启动 kubelet 时所使用的标志外,该文件还包含诸如 CGroup 驱动程序等动态参数。
227230

228231
<!--
229232
After marshalling these two files to disk, kubeadm attempts to run the following two
@@ -245,13 +248,17 @@ If the reload and restart are successful, the normal `kubeadm init` workflow con
245248

246249
When you run `kubeadm join`, kubeadm uses the Bootstrap Token credential to perform
247250
a TLS bootstrap, which fetches the credential needed to download the
248-
`kubelet-config` ConfigMap and writes it to `/var/lib/kubelet/config.yaml`. The dynamic
249-
environment file is generated in exactly the same way as `kubeadm init`.
251+
`kubelet-config` ConfigMap and writes it to `/var/lib/kubelet/config.yaml`.
252+
Additionally, the kubeadm tool detects the CRI socket on the node and writes its details
253+
(including the socket path) into a local configuration, `/var/lib/kubelet/instance-config.yaml`.
254+
The dynamic environment file is generated in exactly the same way as `kubeadm init`.
250255
-->
251256
### 使用 `kubeadm join` 时的工作流程 {#workflow-when-using-kubeadm-join}
252257

253258
当运行 `kubeadm join` 时,kubeadm 使用 Bootstrap Token 证书执行 TLS 引导,该引导会获取一份证书,
254259
该证书需要下载 `kubelet-config` ConfigMap 并把它写入 `/var/lib/kubelet/config.yaml` 中。
260+
此外,kubeadm 会在节点上自动检测 CRI 套接字,
261+
并将其详细信息(包括套接字路径)写入本地配置文件 `/var/lib/kubelet/instance-config.yaml`。
255262
动态环境文件的生成方式恰好与 `kubeadm init` 完全相同。
256263

257264
<!--

0 commit comments

Comments
 (0)