Skip to content

Commit 93b8604

Browse files
authored
Merge pull request #33126 from tengqm/zh-update-node-comm
[zh] Update control plane to node communication page
2 parents dcff2a8 + 446de63 commit 93b8604

File tree

1 file changed

+18
-18
lines changed

1 file changed

+18
-18
lines changed

content/zh/docs/concepts/architecture/control-plane-node-communication.md

Lines changed: 18 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -30,9 +30,9 @@ One or more forms of [authorization](/docs/reference/access-authn-authz/authoriz
3030
## 节点到控制面
3131

3232
Kubernetes 采用的是中心辐射型(Hub-and-Spoke)API 模式。
33-
所有从集群(或所运行的 Pods)发出的 API 调用都终止于 apiserver
33+
所有从集群(或所运行的 Pods)发出的 API 调用都终止于 API 服务器
3434
其它控制面组件都没有被设计为可暴露远程服务。
35-
apiserver 被配置为在一个安全的 HTTPS 端口(通常为 443)上监听远程连接请求,
35+
API 服务器被配置为在一个安全的 HTTPS 端口(通常为 443)上监听远程连接请求,
3636
并启用一种或多种形式的客户端[身份认证](/zh/docs/reference/access-authn-authz/authentication/)机制。
3737
一种或多种客户端[鉴权机制](/zh/docs/reference/access-authn-authz/authorization/)应该被启用,
3838
特别是在允许使用[匿名请求](/zh/docs/reference/access-authn-authz/authentication/#anonymous-requests)
@@ -41,7 +41,7 @@ apiserver 被配置为在一个安全的 HTTPS 端口(通常为 443)上监
4141
<!--
4242
Nodes should be provisioned with the public root certificate for the cluster such that they can connect securely to the apiserver along with valid client credentials. A good approach is that the client credentials provided to the kubelet are in the form of a client certificate. See [kubelet TLS bootstrapping](/docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/) for automated provisioning of kubelet client certificates.
4343
-->
44-
应该使用集群的公共根证书开通节点,这样它们就能够基于有效的客户端凭据安全地连接 apiserver
44+
应该使用集群的公共根证书开通节点,这样它们就能够基于有效的客户端凭据安全地连接 API 服务器
4545
一种好的方法是以客户端证书的形式将客户端凭据提供给 kubelet。
4646
请查看 [kubelet TLS 启动引导](/zh/docs/reference/command-line-tools-reference/kubelet-tls-bootstrapping/)
4747
以了解如何自动提供 kubelet 客户端证书。
@@ -52,12 +52,12 @@ The `kubernetes` service (in `default` namespace) is configured with a virtual I
5252
5353
The control plane components also communicate with the cluster apiserver over the secure port.
5454
-->
55-
想要连接到 apiserver 的 Pod 可以使用服务账号安全地进行连接。
55+
想要连接到 API 服务器的 Pod 可以使用服务账号安全地进行连接。
5656
当 Pod 被实例化时,Kubernetes 自动把公共根证书和一个有效的持有者令牌注入到 Pod 里。
5757
`kubernetes` 服务(位于 `default` 名字空间中)配置了一个虚拟 IP 地址,用于(通过 kube-proxy)转发
58-
请求到 apiserver 的 HTTPS 末端。
58+
请求到 API 服务器的 HTTPS 末端。
5959

60-
控制面组件也通过安全端口与集群的 apiserver 通信
60+
控制面组件也通过安全端口与集群的 API 服务器通信
6161

6262
<!--
6363
As a result, the default operating mode for connections from the nodes and pods running on the nodes to the control plane is secured by default and can run over untrusted and/or public networks.
@@ -72,9 +72,9 @@ There are two primary communication paths from the control plane (apiserver) to
7272
-->
7373
## 控制面到节点
7474

75-
从控制面(apiserver)到节点有两种主要的通信路径。
76-
第一种是从 apiserver 到集群中每个节点上运行的 kubelet 进程。
77-
第二种是从 apiserver 通过它的代理功能连接到任何节点、Pod 或者服务。
75+
从控制面(API 服务器)到节点有两种主要的通信路径。
76+
第一种是从 API 服务器到集群中每个节点上运行的 kubelet 进程。
77+
第二种是从 API 服务器通过它的代理功能连接到任何节点、Pod 或者服务。
7878

7979
<!--
8080
### apiserver to kubelet
@@ -89,14 +89,14 @@ These connections terminate at the kubelet's HTTPS endpoint. By default, the api
8989
-->
9090
### API 服务器到 kubelet
9191

92-
apiserver 到 kubelet 的连接用于:
92+
API 服务器到 kubelet 的连接用于:
9393

9494
* 获取 Pod 日志
9595
* 挂接(通过 kubectl)到运行中的 Pod
9696
* 提供 kubelet 的端口转发功能。
9797

9898
这些连接终止于 kubelet 的 HTTPS 末端。
99-
默认情况下,apiserver 不检查 kubelet 的服务证书。这使得此类连接容易受到中间人攻击,
99+
默认情况下,API 服务器不检查 kubelet 的服务证书。这使得此类连接容易受到中间人攻击,
100100
在非受信网络或公开网络上运行也是 **不安全的**
101101

102102
<!--
@@ -107,10 +107,10 @@ untrusted or public network.
107107
108108
Finally, [Kubelet authentication and/or authorization](/docs/reference/command-line-tools-reference/kubelet-authentication-authorization/) should be enabled to secure the kubelet API.
109109
-->
110-
为了对这个连接进行认证,使用 `--kubelet-certificate-authority` 标志给 apiserver
111-
提供一个根证书包,用于 kubelet 的服务证书。
110+
为了对这个连接进行认证,使用 `--kubelet-certificate-authority` 标志给 API
111+
服务器提供一个根证书包,用于 kubelet 的服务证书。
112112

113-
如果无法实现这点,又要求避免在非受信网络或公共网络上进行连接,可在 apiserver 和
113+
如果无法实现这点,又要求避免在非受信网络或公共网络上进行连接,可在 API 服务器和
114114
kubelet 之间使用 [SSH 隧道](#ssh-tunnels)
115115

116116
最后,应该启用
@@ -122,9 +122,9 @@ kubelet 之间使用 [SSH 隧道](#ssh-tunnels)。
122122
123123
The connections from the apiserver to a node, pod, or service default to plain HTTP connections and are therefore neither authenticated nor encrypted. They can be run over a secure HTTPS connection by prefixing `https:` to the node, pod, or service name in the API URL, but they will not validate the certificate provided by the HTTPS endpoint nor provide client credentials so while the connection will be encrypted, it will not provide any guarantees of integrity. These connections **are not currently safe** to run over untrusted and/or public networks.
124124
-->
125-
### apiserver 到节点、Pod 和服务
125+
### API 服务器到节点、Pod 和服务
126126

127-
apiserver 到节点、Pod 或服务的连接默认为纯 HTTP 方式,因此既没有认证,也没有加密。
127+
API 服务器到节点、Pod 或服务的连接默认为纯 HTTP 方式,因此既没有认证,也没有加密。
128128
这些连接可通过给 API URL 中的节点、Pod 或服务名称添加前缀 `https:` 来运行在安全的 HTTPS 连接上。
129129
不过这些连接既不会验证 HTTPS 末端提供的证书,也不会提供客户端证书。
130130
因此,虽然连接是加密的,仍无法提供任何完整性保证。
@@ -140,8 +140,8 @@ SSH tunnels are currently deprecated so you shouldn't opt to use them unless you
140140
-->
141141
### SSH 隧道 {#ssh-tunnels}
142142

143-
Kubernetes 支持使用 SSH 隧道来保护从控制面到节点的通信路径。在这种配置下,apiserver
144-
建立一个到集群中各节点的 SSH 隧道(连接到在 22 端口监听的 SSH 服务)
143+
Kubernetes 支持使用 SSH 隧道来保护从控制面到节点的通信路径。在这种配置下,API
144+
服务器建立一个到集群中各节点的 SSH 隧道(连接到在 22 端口监听的 SSH 服务)
145145
并通过这个隧道传输所有到 kubelet、节点、Pod 或服务的请求。
146146
这一隧道保证通信不会被暴露到集群节点所运行的网络之外。
147147

0 commit comments

Comments
 (0)