@@ -100,20 +100,22 @@ $ istioctl install --set profile=demo
100
100
101
101
## 安装前生成清单文件 {#generate-a-manifest-before-installation}
102
102
103
- 在安装 Istio 之前,可以用 ` manifest generate ` 子命令生成清单文件。
104
- 例如,用下面命令生成 ` default ` 配置档的清单文件:
103
+ 在安装 Istio 之前,可以用 ` manifest generate `
104
+ 子命令生成清单文件。例如,使用以下命令为可以使用 ` kubectl `
105
+ 安装的 ` default ` 配置文件生成清单:
105
106
106
107
{{< text bash >}}
107
108
$ istioctl manifest generate > $HOME/generated-manifest.yaml
108
109
{{< /text >}}
109
110
110
- 生成的清单文件可用于检查具体安装了什么,也可用于跟踪清单是如何随着时间而改变的。
111
- 虽然 ` IstioOperator ` CR 代表完整的用户配置,足以用于跟踪,
112
- 但 ` manifest generate ` 命令的输出还能截获底层 chart 潜在的改变,因此可以用于跟踪实际安装过的资源。
111
+ 生成的清单可用于检查具体安装了什么以及跟踪清单随时间的变化。
112
+ 虽然 ` IstioOperator ` CR 代表完整的用户配置并且足以跟踪它,
113
+ 但 ` manifest generate ` 的输出还捕获了底层图表中可能的变化,
114
+ 因此可用于跟踪实际安装的资源。
113
115
114
- ` manifest generate ` 的输出还能传递给 ` kubectl apply ` 或类似的命令,用来安装 Istio。
115
- 然而,这些替代的安装方法不能像 ` istioctl install ` 那样,将相同的依赖顺序应用于资源,
116
- 并且也没有在 Istio 发行版中测试过。
116
+ {{< tip >}}
117
+ 您通常用于安装的任何其他标志或自定义值覆盖也应提供给 ` istioctl manifest generate ` 命令。
118
+ {{< /tip >}}
117
119
118
120
{{< warning >}}
119
121
如果尝试使用 ` istioctl manifest generate ` 安装和管理 Istio,请注意以下事项:
@@ -127,48 +129,26 @@ $ istioctl manifest generate > $HOME/generated-manifest.yaml
127
129
$ istioctl manifest generate --set values.defaultRevision=default
128
130
{{< /text >}}
129
131
132
+ 1 . 资源可能没有按照与 ` istioctl install ` 相同的依赖项顺序进行安装。
133
+
134
+ 1 . 此方法尚未作为 Istio 版本的一部分进行测试。
135
+
130
136
1 . ` istioctl install ` 会在 Kubernetes 上下文中自动探测环境特定的设置,
131
137
但以离线运行的 ` manifest generate ` 不行,而且可能导致意外结果。
132
- 特别是,如果 Kubernetes 环境不支持第三方服务帐户令牌,则必须确保遵循[ 这些步骤] ( /zh/docs/ops/best-practices/security/#configure-third-party-service-account-tokens ) 。
138
+ 特别是,如果 Kubernetes 环境不支持第三方服务帐户令牌,
139
+ 则必须确保遵循[ 这些步骤] ( /zh/docs/ops/best-practices/security/#configure-third-party-service-account-tokens ) 。
140
+ 建议在 ` istio manifest generate ` 命令后附加'` --cluster-specific ` 以检测目标集群的环境,
141
+ 这会将这些特定于集群的环境设置嵌入到生成的清单中。这需要对正在运行的集群进行网络访问。
133
142
134
- 1 . 用 ` kubectl apply ` 执行生成的清单,会显示临时错误,这是因为集群中的资源进入可用状态的顺序有问题。
143
+ 1 . 用 ` kubectl apply ` 执行生成的清单,会显示临时错误,
144
+ 这是因为集群中的资源进入可用状态的顺序有问题。
135
145
136
146
1 . ` istioctl install ` 自动清除一些资源,其实这些资源在配置改变时(例如,当您删除网关)就应该被删掉了。
137
- 但此机制在 ` kubectl ` 和 ` istio manifest generate ` 协同使用时并不会发生,所以这些资源必须手动删除。
147
+ 但此机制在 ` kubectl ` 和 ` istio manifest generate `
148
+ 协同使用时并不会发生,所以这些资源必须手动删除。
138
149
139
150
{{< /warning >}}
140
151
141
- ## 显示清单的差异 {#show-differences-in-manifests}
142
-
143
- 使用这一组命令,以 YAML 风格的差异对比方式,显示 default 配置项和定制安装生成的两个清单之间的差异:
144
-
145
- {{< text bash >}}
146
- $ istioctl manifest generate > 1.yaml
147
- $ istioctl manifest generate -f samples/operator/pilot-k8s.yaml > 2.yaml
148
- $ istioctl manifest diff 1.yaml 2.yaml
149
- Differences in manifests are:
150
-
151
-
152
- Object Deployment:istio-system: istiod has diffs:
153
-
154
- spec:
155
- template:
156
- spec:
157
- containers:
158
- '[ #0 ] ':
159
- resources:
160
- requests:
161
- cpu: 500m -> 1000m
162
- memory: 2048Mi -> 4096Mi
163
-
164
-
165
- Object HorizontalPodAutoscaler:istio-system: istiod has diffs:
166
-
167
- spec:
168
- maxReplicas: 5 -> 10
169
- minReplicas: 1 -> 2
170
- {{< /text >}}
171
-
172
152
## 验证安装是否成功 {#verify-a-successful-installation}
173
153
174
154
您可以用 ` verify-install ` 命令检查 Istio 是否安装成功,此命令用您指定的清单对比集群中实际的安装情况。
0 commit comments