Multi-network multicluster configuration¶
Multi-network multicluster configuration is a deployment pattern used to enable cross-cluster load balancing between clusters residing in different networks.^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__multicluster__README.md]
To implement this architecture, all clusters must utilize a dedicated East-West Gateway. This component is essential for handling cross-network traffic and prevents east-west traffic from overwhelming the default north-south Ingress gateway^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__multicluster__README.md].
Prerequisites and Setup¶
This configuration assumes that Istio has already been deployed to the primary clusters^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__multicluster__README.md]. The East-West Gateway is deployed using a specific script where environment variables for MESH, CLUSTER, and NETWORK must align with the values used during the control plane deployment^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__multicluster__README.md].
export MESH=mesh1
export CLUSTER=cluster1
export NETWORK=network1
./samples/multicluster/gen-eastwest-gateway.sh | \
[istioctl](<./istioctl.md>) manifest generate -f - | \
[kubectl](<./kubectl.md>) apply -f -
Enabling Cross-Network Services¶
The defining step for a multi-network setup is exposing services through the East-West Gateway in each cluster^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__multicluster__README.md]. This allows the mesh to route traffic across network boundaries effectively.
[kubectl](<./kubectl.md>) apply -f samples/multicluster/expose-services.yaml -n istio-system
Related Concepts¶
Sources¶
^[400-devops__07-Monitoring-and-Observability__k8s-istio__samples__multicluster__README.md]