Skip to content

Commit 7142d9f

Browse files
authored
[zh] Sync install/external-controlplane/ (#16699)
Signed-off-by: windsonsea <[email protected]>
1 parent f2b69f6 commit 7142d9f

File tree

3 files changed

+53
-47
lines changed

3 files changed

+53
-47
lines changed

content/zh/docs/setup/install/external-controlplane/external-controlplane.svg

Lines changed: 5 additions & 5 deletions
Loading

content/zh/docs/setup/install/external-controlplane/external-multicluster.svg

Lines changed: 9 additions & 9 deletions
Loading

content/zh/docs/setup/install/external-controlplane/index.md

Lines changed: 39 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,20 @@
11
---
22
title: 使用外部控制平面安装 Istio
3-
description: 安装外部控制平面和从集群
4-
weight: 80
3+
description: 使用外部控制平面和从集群数据平面安装 Istio
4+
weight: 50
55
aliases:
66
- /zh/docs/setup/additional-setup/external-controlplane/
77
- /latest/zh/docs/setup/additional-setup/external-controlplane/
88
keywords: [external,control,istiod,remote]
99
owner: istio/wg-environments-maintainers
10-
test: no
10+
test: yes
1111
---
1212

1313
本指南将引导您完成安装{{< gloss "external control plane">}}外部控制平面{{< /gloss >}},
14-
然后将一个或多个{{< gloss "remote cluster" >}}从集群{{< /gloss >}}连接到该平面的过程。
15-
14+
然后将一个或多个{{< gloss "remote cluster" >}}从集群{{< /gloss >}}连接到这个外部控制平面。
1615
外部控制平面[部署模型](/zh/docs/ops/deployment/deployment-models/#control-plane-models)
17-
允许网格操作员在与组成网格的数据平面集群(或多个集群)分开的外部集群上安装和管理控制平面。
18-
这种部署模型可以将网状网络运营商和网状网络管理员明确区分。网格操作员可以安装和管理 Istio 控制平面,
16+
允许网格运维人员在与组成网格的数据平面集群(或多个集群)分开的外部集群上安装和管理控制平面。
17+
这种部署模型可以确保网格运维人员和网格管理员有明确的分工。网格运维人员可以安装和管理 Istio 控制平面,
1918
而网格管理员只需配置网格即可。
2019

2120
{{< image width="75%"
@@ -26,10 +25,10 @@ test: no
2625
在从集群中运行的 Envoy 代理(Sidecar 和 Gateway)通过 Ingress Gateway
2726
访问外部 Istiod,向外暴露了需要被发现,CA,注入和验证的端点。
2827

29-
虽然外部控制平面的配置和管理是由外部集群中的网格操作员完成的
30-
但连接到外部控制平面的第一个从集群充当了网格本身的配置集群。除了网状服务本身之外
31-
网格管理员还将使用配置集群来配置网状资源(Gateway、虚拟服务等)。外部控制平面将从
32-
Kubernetes API Server 远程访问此配置,如上图所示。
28+
虽然外部控制平面的配置和管理是由外部集群中的网格运维人员完成的
29+
但连接到外部控制平面的第一个从集群充当了网格本身的配置集群。除了网格服务本身之外
30+
网格管理员还将使用配置集群来配置网格资源(Gateway、虚拟服务等)。外部控制平面将从
31+
Kubernetes API 服务器远程访问此配置,如上图所示。
3332

3433
## 准备开始 {#before-you-begin}
3534

@@ -38,19 +37,20 @@ Kubernetes API Server 远程访问此配置,如上图所示。
3837
本指南要求您有任意两个[受支持版本的 Kubernetes](/zh/docs/releases/supported-releases#support-status-of-istio-releases)
3938
集群:{{< supported_kubernetes_versions >}}。
4039

41-
第一个集群将托管安装在 `external-istiod` 命名空间中的{{< gloss "external control plane">}}外部控制平面{{< /gloss >}}。
40+
第一个集群将托管安装在 `external-istiod`
41+
命名空间中的{{< gloss "external control plane">}}外部控制平面{{< /gloss >}}。
4242
Ingress Gateway 也安装在 `istio-system` 命名空间中,以提供对外部控制平面的跨集群访问。
4343

44-
第二个集群是将运行网格应用程序工作负载的{{< gloss "remote cluster">}}从集群{{< /gloss >}}。
45-
它的 Kubernetes API Server 还提供了外部控制平面(Istiod)用来配置工作负载代理的网状配置
44+
第二个集群是将运行网格应用工作负载的{{< gloss "remote cluster">}}从集群{{< /gloss >}}。
45+
它的 Kubernetes API 服务器还提供了外部控制平面(Istiod)用来配置工作负载代理的网格配置
4646

47-
### API Server 访问 {#API-server-access}
47+
### API 服务器访问 {#api-server-access}
4848

49-
外部控制平面集群必须可以访问从集群中的 Kubernetes API Server
50-
许多云提供商通过网络负载均衡器(NLB)公开访问 API Server
51-
如果无法直接访问 API Server,则需要修改安装过程以启用访问权限。
49+
外部控制平面集群必须可以访问从集群中的 Kubernetes API 服务器
50+
许多云提供商通过网络负载均衡器(NLB)公开访问 API 服务器
51+
如果无法直接访问 API 服务器,则需要修改安装过程以启用访问权限。
5252
例如,在[多集群配置](#adding-clusters)中使用的[东西向](https://en.wikipedia.org/wiki/East-west_traffic)
53-
Gateway 也可以用于启用对 API Server 的访问
53+
Gateway 也可以用于启用对 API 服务器的访问
5454

5555
### 环境变量 {#environment-variables}
5656

@@ -74,9 +74,9 @@ $ export REMOTE_CLUSTER_NAME=<您的从集群名称>
7474

7575
## 集群配置 {#cluster-configuration}
7676

77-
### 网格操作步骤 {#mesh-operator-steps}
77+
### 网格运维人员步骤 {#mesh-operator-steps}
7878

79-
网格操作员负责在外部集群上安装和管理外部 Istio 控制平面。
79+
网格运维人员负责在外部集群上安装和管理外部 Istio 控制平面。
8080
这包括在外部集群上配置 Ingress Gateway,允许从集群访问控制平面,并在从集群上安装所需的
8181
Webhook、ConfigMap 和 Secret,以便使用外部控制平面。
8282

@@ -135,8 +135,8 @@ Webhook、ConfigMap 和 Secret,以便使用外部控制平面。
135135

136136
1. 使用带有 TLS 的公共主机名配置您的环境来暴露 Istio Ingress Gateway 服务。
137137

138-
`EXTERNAL_ISTIOD_ADDR` 环境变量设置为主机名,将 `SSL_SECRET_NAME`
139-
环境变量设置为包含 TLS 证书的 Secret:
138+
`EXTERNAL_ISTIOD_ADDR` 环境变量设置为主机名,将 `SSL_SECRET_NAME`
139+
环境变量设置为包含 TLS 证书的 Secret:
140140

141141
{{< text syntax=bash snip_id=none >}}
142142
$ export EXTERNAL_ISTIOD_ADDR=<您的外部 istiod 主机>
@@ -165,7 +165,7 @@ Webhook、ConfigMap 和 Secret,以便使用外部控制平面。
165165
这样做还需要对配置进行一些其他更改。请务必按照以下说明中的所有相关步骤进行操作。
166166
{{< /tip >}}
167167

168-
#### 设置从集群 {#set-up-the-remote-cluster}
168+
#### 设置从配置集群 {#set-up-the-remote-config-cluster}
169169

170170
1. 使用 `remote` 配置文件配置从集群上安装的 Istio。这将安装一个使用外部控制平面注入器的注入 Webhook,
171171
而不是本地部署的注入器。因为这个集群也将作为配置集群,所以安装从集群上所需的 Istio CRD 和其他资源时将
@@ -193,7 +193,7 @@ Webhook、ConfigMap 和 Secret,以便使用外部控制平面。
193193
{{< /text >}}
194194

195195
{{< tip >}}
196-
如果您的集群名称包含`/`(斜杠)字符,请在 `injectionURL` 中将其替换为 `--slash--`
196+
如果您的集群名称包含 `/`(斜杠)字符,请在 `injectionURL` 中将其替换为 `--slash--`
197197
例如 `injectionURL: https://1.2.3.4:15017/inject/cluster/`<mark>`cluster--slash--1`</mark>`/net/network1`
198198
{{< /tip >}}
199199

@@ -268,7 +268,7 @@ Webhook、ConfigMap 和 Secret,以便使用外部控制平面。
268268
1. 创建 Istio 配置以在外部集群的 `external-istiod` 命名空间中安装控制平面。
269269
请注意,istiod 配置为使用本地安装的 `istio` ConfigMap,并且 `SHARED_MESH_CONFIG`
270270
环境变量设置为 `istio`。这指示 istiod 将网格管理员在配置集群的 ConfigMap
271-
中设置的值与网格操作员在本地 ConfigMap 中设置的值合并,如果有任何冲突,这将优先考虑:
271+
中设置的值与网格运维人员在本地 ConfigMap 中设置的值合并,如果有任何冲突,这将优先考虑:
272272

273273
{{< text syntax=bash snip_id=get_external_istiod_iop >}}
274274
$ cat <<EOF > external-istiod.yaml
@@ -326,11 +326,15 @@ Webhook、ConfigMap 和 Secret,以便使用外部控制平面。
326326
value: istio
327327
values:
328328
global:
329+
externalIstiod: true
329330
caAddress: $EXTERNAL_ISTIOD_ADDR:15012
330331
istioNamespace: external-istiod
331332
operatorManageWebhooks: true
332333
configValidation: false
333334
meshID: mesh1
335+
multiCluster:
336+
clusterName: ${REMOTE_CLUSTER_NAME}
337+
network: network1
334338
EOF
335339
{{< /text >}}
336340

@@ -468,7 +472,7 @@ Webhook、ConfigMap 和 Secret,以便使用外部控制平面。
468472
$ kubectl apply -f external-istiod-gw.yaml --context="${CTX_EXTERNAL_CLUSTER}"
469473
{{< /text >}}
470474

471-
### 网格管理步骤 {#mesh-admin-steps}
475+
### 网格管理员步骤 {#mesh-admin-steps}
472476

473477
现在 Istio 已启动并运行,网格管理员只需在网格中部署和配置服务,包括 Gateway(如果需要)。
474478

@@ -611,7 +615,7 @@ $ helm install istio-egressgateway istio/gateway -n external-istiod --kube-conte
611615

612616
{{< tabset category-name="config-api" >}}
613617

614-
{{< tab name="Istio APIs" category-value="istio-apis" >}}
618+
{{< tab name="Istio API" category-value="istio-apis" >}}
615619

616620
确认 Istio Ingress Gateway 正在运行:
617621

@@ -641,7 +645,7 @@ $ kubectl get crd gateways.gateway.networking.k8s.io --context="${CTX_REMOTE_CLU
641645

642646
{{< tabset category-name="config-api" >}}
643647

644-
{{< tab name="Istio APIs" category-value="istio-apis" >}}
648+
{{< tab name="Istio API" category-value="istio-apis" >}}
645649

646650
{{< text bash >}}
647651
$ kubectl apply -f @samples/helloworld/helloworld-gateway.yaml@ -n sample --context="${CTX_REMOTE_CLUSTER}"
@@ -663,7 +667,7 @@ $ kubectl apply -f @samples/helloworld/gateway-api/helloworld-gateway.yaml@ -n s
663667

664668
{{< tabset category-name="config-api" >}}
665669

666-
{{< tab name="Istio APIs" category-value="istio-apis" >}}
670+
{{< tab name="Istio API" category-value="istio-apis" >}}
667671

668672
{{< text bash >}}
669673
$ export INGRESS_HOST=$(kubectl -n external-istiod --context="${CTX_REMOTE_CLUSTER}" get service istio-ingressgateway -o jsonpath='{.status.loadBalancer.ingress[0].ip}')
@@ -695,11 +699,12 @@ $ export GATEWAY_URL=$INGRESS_HOST:80
695699
## 将集群添加到网格(可选) {#adding-clusters}
696700

697701
本节介绍如何通过添加另一个从集群将现有的外部控制平面网格扩展到多集群。
698-
这使您可以轻松分发服务并使用[位置感知路由和故障转移](/zh/docs/tasks/traffic-management/locality-load-balancing/),以支持应用程序的高可用性。
702+
这使您可以轻松分发服务并使用[位置感知路由和故障转移](/zh/docs/tasks/traffic-management/locality-load-balancing/)
703+
以支持应用的高可用性。
699704

700705
{{< image width="75%"
701706
link="external-multicluster.svg"
702-
caption="多从集群的外部控制平面"
707+
caption="外部控制平面带多个从集群"
703708
>}}
704709

705710
与第一个从集群不同,添加到同一外部控制平面的第二个以及后续集群不提供网格配置,而仅提供端点配置的来源,
@@ -733,7 +738,8 @@ $ export SECOND_CLUSTER_NAME=<您的第二个从集群名称>
733738
EOF
734739
{{< /text >}}
735740

736-
1. 如果您使用的是 `EXTERNAL_ISTIOD_ADDR` 的 IP 地址,而不是合适的 DNS 主机名,请修改配置以指定发现地址和路径,而不是注入 URL:
741+
1. 如果您使用的是 `EXTERNAL_ISTIOD_ADDR` 的 IP 地址,而不是合适的 DNS
742+
主机名,请修改配置以指定发现地址和路径,而不是注入 URL:
737743

738744
{{< warning >}}
739745
在生产环境中不推荐这样做。

0 commit comments

Comments
 (0)