@@ -10,7 +10,7 @@ owner: istio/wg-environments-maintainers
10
10
{{< boilerplate alpha >}}
11
11
12
12
Follow this guide to install the Istio control plane on both ` cluster1 ` and
13
- ` cluster2 ` , making each a {{< gloss >}}primary cluster{{< /gloss >}}. Cluster
13
+ ` cluster2 ` , making each a {{< gloss >}}primary cluster{{< /gloss >}} (this is currently the only supported configuration in ambient mode) . Cluster
14
14
` cluster1 ` is on the ` network1 ` network, while ` cluster2 ` is on the
15
15
` network2 ` network. This means there is no direct connectivity between pods
16
16
across cluster boundaries.
@@ -92,6 +92,18 @@ Then, install the `istiod` chart in `cluster1` with the following multi-cluster
92
92
$ helm install istiod istio/istiod -n istio-system --kube-context "${CTX_CLUSTER1}" --set global.meshID=mesh1 --set global.multiCluster.clusterName=cluster1 --set global.network=network1 --set profile=ambient --set pilot.env.AMBIENT_ENABLE_MULTI_NETWORK="true"
93
93
{{< /text >}}
94
94
95
+ Next, install the CNI node agent in ambient mode:
96
+
97
+ {{< text syntax=bash snip_id=install_cni >}}
98
+ $ helm install istio-cni istio/cni -n istio-system --kube-context "${CTX_CLUSTER1}"--set profile=ambient
99
+ {{< /text >}}
100
+
101
+ Finally, install the ztunnel data plane:
102
+
103
+ {{< text syntax=bash snip_id=install_ztunnel >}}
104
+ $ helm install ztunnel istio/ztunnel -n istio-system --kube-context "${CTX_CLUSTER1}
105
+ {{< /text >}}
106
+
95
107
{{< /tab >}}
96
108
97
109
{{< /tabset >}}
@@ -163,7 +175,7 @@ TODO: Handle revisions
163
175
Apply the configuration to ` cluster1 ` :
164
176
165
177
{{< text bash >}}
166
- $ istioctl install --context="${CTX_CLUSTER1}" -f cluster1-ewgateway.yaml
178
+ $ kubectl apply --context="${CTX_CLUSTER1}" -f cluster1-ewgateway.yaml
167
179
{{< /text >}}
168
180
169
181
{{< /tab >}}
@@ -180,7 +192,9 @@ istio-eastwestgateway LoadBalancer 10.80.6.124 34.75.71.237 ... 51
180
192
181
193
## Expose services in ` cluster1 `
182
194
183
- TODO: change to explanation about service/namespace scope
195
+ {{< text bash >}}
196
+ $ kubectl --context="${CTX_CLUSTER1}" label svc helloworld -n sample istio.io/global="true"
197
+ {{< /text >}}
184
198
185
199
## Set the default network for ` cluster2 `
186
200
@@ -243,6 +257,18 @@ Then, install the `istiod` chart in `cluster2` with the following multi-cluster
243
257
$ helm install istiod istio/istiod -n istio-system --kube-context "${CTX_CLUSTER2}" --set global.meshID=mesh1 --set global.multiCluster.clusterName=cluster2 --set global.network=network2 --set profile=ambient --set pilot.env.AMBIENT_ENABLE_MULTI_NETWORK="true"
244
258
{{< /text >}}
245
259
260
+ Next, install the CNI node agent in ambient mode:
261
+
262
+ {{< text syntax=bash snip_id=install_cni >}}
263
+ $ helm install istio-cni istio/cni -n istio-system --kube-context "${CTX_CLUSTER2}"--set profile=ambient
264
+ {{< /text >}}
265
+
266
+ Finally, install the ztunnel data plane:
267
+
268
+ {{< text syntax=bash snip_id=install_ztunnel >}}
269
+ $ helm install ztunnel istio/ztunnel -n istio-system --kube-context "${CTX_CLUSTER2}
270
+ {{< /text >}}
271
+
246
272
{{< /tab >}}
247
273
248
274
{{< /tabset >}}
@@ -297,7 +323,7 @@ TODO: Handle revisions
297
323
Apply the configuration to ` cluster2 ` :
298
324
299
325
{{< text bash >}}
300
- $ istioctl install --context="${CTX_CLUSTER2}" -f cluster2-ewgateway.yaml
326
+ $ kubectl apply --context="${CTX_CLUSTER2}" -f cluster2-ewgateway.yaml
301
327
{{< /text >}}
302
328
303
329
{{< /tab >}}
@@ -314,7 +340,9 @@ istio-eastwestgateway LoadBalancer 10.0.12.121 34.122.91.98 ... 51
314
340
315
341
## Expose services in ` cluster2 `
316
342
317
- TODO: change to explanation about service/namespace scope
343
+ {{< text bash >}}
344
+ $ kubectl --context="${CTX_CLUSTER2}" label svc helloworld -n sample istio.io/global="true"
345
+ {{< /text >}}
318
346
319
347
## Enable Endpoint Discovery
320
348
0 commit comments