Bookinfo Application - Multicluster
The following information describes an experimental feature, which is intendedfor evaluation purposes only.
This example complements the simplified multicluster setup procedure.It shows you how to deploy Istio’s classic Bookinfo sample application acrossa multicluster mesh.
Getting it running
Start by following these instructions which will show you how toconfigure a 3 cluster mesh.
Download the
setup-bookinfo.sh
script and saved it intothe working directory created in the previous step.Run the downloaded script:
$ ./setup-bookinfo.sh install
This will deploy Bookinfo on all the clusters in the mesh.
Showing that its working
Now that Bookinfo has been deployed to all clusters, we can disable some of its service in some of its clusters,and then see that the overall app continues to be responsive, indicating that traffic transparently flows betweenclusters as needed.
Let’s disable a few services:
$ for DEPLOYMENT in details-v1 productpage-v1 reviews-v2 reviews-v3; do
$ kubectl --context=context-east-1 scale deployment ${DEPLOYMENT} --replicas=0
$ done
$ for DEPLOYMENT in details-v1 reviews-v2 reviews-v3 ratings-v1; do
$ kubectl --context=context-east-2 scale deployment ${DEPLOYMENT} --replicas=0
$ done
$ for DEPLOYMENT in productpage-v1 reviews-v2 reviews-v1 ratings-v1; do
$ kubectl --context=context-west-1 scale deployment ${DEPLOYMENT} --replicas=0
$ done
Now use Bookinfo normally to demonstrate that the multicluster deployment is working properly.
Clean up
You can remove Bookinfo from all clusters with:
$ ./setup-bookinfo.sh uninstall
See also
Multi-Mesh Deployments for Isolation and Boundary Protection
Deploy environments that require isolation into separate meshes and enable inter-mesh communication by mesh federation.
Version Routing in a Multicluster Service Mesh
Configuring Istio route rules in a multicluster service mesh.
Set up a multicluster mesh over two GKE clusters.
Example multicluster mesh over two IBM Cloud Private clusters.
Install an Istio mesh across multiple Kubernetes clusters with replicated control plane instances.
Shared control plane (multi-network)
Install an Istio mesh across multiple Kubernetes clusters using a shared control plane for disconnected cluster networks.