Skip to content

Commit 9d40273

Browse files
authored
Merge pull request #38961 from windsonsea/nodesy
[zh] sync /concepts/architecture/nodes.md
2 parents 4b94058 + 0ced6dd commit 9d40273

File tree

1 file changed

+26
-17
lines changed
  • content/zh-cn/docs/concepts/architecture

1 file changed

+26
-17
lines changed

content/zh-cn/docs/concepts/architecture/nodes.md

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ weight: 10
1515
<!-- overview -->
1616

1717
<!--
18-
Kubernetes runs your workload by placing containers into Pods to run on _Nodes_.
18+
Kubernetes runs your {{< glossary_tooltip text="workload" term_id="workload" >}} by placing containers into Pods to run on _Nodes_.
1919
A node may be a virtual or physical machine, depending on the cluster. Each node
2020
is managed by the
2121
{{< glossary_tooltip text="control plane" term_id="control-plane" >}}
@@ -30,7 +30,8 @@ The [components](/docs/concepts/overview/components/#node-components) on a node
3030
{{< glossary_tooltip text="container runtime" term_id="container-runtime" >}}, and the
3131
{{< glossary_tooltip text="kube-proxy" term_id="kube-proxy" >}}.
3232
-->
33-
Kubernetes 通过将容器放入在节点(Node)上运行的 Pod 中来执行你的工作负载。
33+
Kubernetes 通过将容器放入在节点(Node)上运行的 Pod
34+
中来执行你的{{< glossary_tooltip text="工作负载" term_id="workload" >}}。
3435
节点可以是一个虚拟机或者物理机器,取决于所在的集群配置。
3536
每个节点包含运行 {{< glossary_tooltip text="Pod" term_id="pod" >}} 所需的服务;
3637
这些节点由{{< glossary_tooltip text="控制面" term_id="control-plane" >}}负责管理。
@@ -372,7 +373,7 @@ Condition,被保护起来的节点在其规约中被标记为不可调度(Un
372373
In the Kubernetes API, a node's condition is represented as part of the `.status`
373374
of the Node resource. For example, the following JSON structure describes a healthy node:
374375
-->
375-
在 Kubernetes API 中,节点的状况表示节点资源中`.status` 的一部分。
376+
在 Kubernetes API 中,节点的状况表示节点资源中 `.status` 的一部分。
376377
例如,以下 JSON 结构描述了一个健康节点:
377378

378379
```json
@@ -425,7 +426,7 @@ names.
425426
-->
426427
节点控制器在确认 Pod 在集群中已经停止运行前,不会强制删除它们。
427428
你可以看到可能在这些无法访问的节点上运行的 Pod 处于 `Terminating` 或者 `Unknown` 状态。
428-
如果 kubernetes 不能基于下层基础设施推断出某节点是否已经永久离开了集群,
429+
如果 Kubernetes 不能基于下层基础设施推断出某节点是否已经永久离开了集群,
429430
集群管理员可能需要手动删除该节点对象。
430431
从 Kubernetes 删除节点对象将导致 API 服务器删除节点上所有运行的 Pod 对象并释放它们的名字。
431432

@@ -1029,7 +1030,7 @@ section [Graceful Node Shutdown](#graceful-node-shutdown) for more details.
10291030

10301031
<!--
10311032
When a node is shutdown but not detected by kubelet's Node Shutdown Manager, the pods
1032-
that are part of a StatefulSet will be stuck in terminating status on
1033+
that are part of a {{< glossary_tooltip text="StatefulSet" term_id="statefulset" >}} will be stuck in terminating status on
10331034
the shutdown node and cannot move to a new running node. This is because kubelet on
10341035
the shutdown node is not available to delete the pods so the StatefulSet cannot
10351036
create a new pod with the same name. If there are volumes used by the pods, the
@@ -1041,7 +1042,8 @@ created on a different running node. If the original shutdown node does not come
10411042
these pods will be stuck in terminating status on the shutdown node forever.
10421043
-->
10431044
当某节点关闭但 kubelet 的节点关闭管理器未检测到这一事件时,
1044-
在那个已关闭节点上、属于 StatefulSet 的 Pod 将停滞于终止状态,并且不能移动到新的运行节点上。
1045+
在那个已关闭节点上、属于 {{< glossary_tooltip text="StatefulSet" term_id="statefulset" >}}
1046+
的 Pod 将停滞于终止状态,并且不能移动到新的运行节点上。
10451047
这是因为已关闭节点上的 kubelet 已不存在,亦无法删除 Pod,
10461048
因此 StatefulSet 无法创建同名的新 Pod。
10471049
如果 Pod 使用了卷,则 VolumeAttachments 不会从原来的已关闭节点上删除,
@@ -1054,14 +1056,15 @@ these pods will be stuck in terminating status on the shutdown node forever.
10541056
To mitigate the above situation, a user can manually add the taint `node.kubernetes.io/out-of-service` with either `NoExecute`
10551057
or `NoSchedule` effect to a Node marking it out-of-service.
10561058
If the `NodeOutOfServiceVolumeDetach`[feature gate](/docs/reference/command-line-tools-reference/feature-gates/)
1057-
is enabled on `kube-controller-manager`, and a Node is marked out-of-service with this taint, the
1059+
is enabled on {{< glossary_tooltip text="kube-controller-manager" term_id="kube-controller-manager" >}}, and a Node is marked out-of-service with this taint, the
10581060
pods on the node will be forcefully deleted if there are no matching tolerations on it and volume
10591061
detach operations for the pods terminating on the node will happen immediately. This allows the
10601062
Pods on the out-of-service node to recover quickly on a different node.
10611063
-->
10621064
为了缓解上述情况,用户可以手动将具有 `NoExecute` 或 `NoSchedule` 效果的
10631065
`node.kubernetes.io/out-of-service` 污点添加到节点上,标记其无法提供服务。
1064-
如果在 `kube-controller-manager` 上启用了 `NodeOutOfServiceVolumeDetach`
1066+
如果在 {{< glossary_tooltip text="kube-controller-manager" term_id="kube-controller-manager" >}}
1067+
上启用了 `NodeOutOfServiceVolumeDetach`
10651068
[特性门控](/zh-cn/docs/reference/command-line-tools-reference/feature-gates/),
10661069
并且节点被通过污点标记为无法提供服务,如果节点 Pod 上没有设置对应的容忍度,
10671070
那么这样的 Pod 将被强制删除,并且该在节点上被终止的 Pod 将立即进行卷分离操作。
@@ -1186,15 +1189,21 @@ see [KEP-2400](https://github.com/kubernetes/enhancements/issues/2400) and its
11861189
## {{% heading "whatsnext" %}}
11871190

11881191
<!--
1189-
* Learn about the [components](/docs/concepts/overview/components/#node-components) that make up a node.
1190-
* Read the [API definition for Node](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#node-v1-core).
1191-
* Read the [Node](https://git.k8s.io/design-proposals-archive/architecture/architecture.md#the-kubernetes-node)
1192-
section of the architecture design document.
1193-
* Read about [taints and tolerations](/docs/concepts/scheduling-eviction/taint-and-toleration/).
1192+
Learn more about the following:
1193+
* [Components](/docs/concepts/overview/components/#node-components) that make up a node.
1194+
* [API definition for Node](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#node-v1-core).
1195+
* [Node](https://git.k8s.io/design-proposals-archive/architecture/architecture.md#the-kubernetes-node) section of the architecture design document.
1196+
* [Taints and Tolerations](/docs/concepts/scheduling-eviction/taint-and-toleration/).
1197+
* [Node Resource Managers](/docs/concepts/policy/node-resource-managers/).
1198+
* [Resource Management for Windows nodes](/docs/concepts/configuration/windows-resource-management/).
11941199
-->
1195-
* 进一步了解节点[组件](/zh-cn/docs/concepts/overview/components/#node-components)。
1196-
* 阅读 [Node 的 API 定义](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#node-v1-core)。
1197-
* 阅读架构设计文档中有关
1200+
进一步了解以下资料:
1201+
1202+
* 构成节点的[组件](/zh-cn/docs/concepts/overview/components/#node-components)。
1203+
* [Node 的 API 定义](/docs/reference/generated/kubernetes-api/{{< param "version" >}}/#node-v1-core)。
1204+
* 架构设计文档中有关
11981205
[Node](https://git.k8s.io/design-proposals-archive/architecture/architecture.md#the-kubernetes-node)
11991206
的章节。
1200-
* 了解[污点和容忍度](/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration/)。
1207+
* [污点和容忍度](/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration/)。
1208+
* [节点资源管理器](/zh-cn/docs/concepts/policy/node-resource-managers/)。
1209+
* [Windows 节点的资源管理](/zh-cn/docs/concepts/configuration/windows-resource-management/)。

0 commit comments

Comments
 (0)