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:

  1. $ ./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:

  1. $ for DEPLOYMENT in details-v1 productpage-v1 reviews-v2 reviews-v3; do
  2. $ kubectl --context=context-east-1 scale deployment ${DEPLOYMENT} --replicas=0
  3. $ done
  4. $ for DEPLOYMENT in details-v1 reviews-v2 reviews-v3 ratings-v1; do
  5. $ kubectl --context=context-east-2 scale deployment ${DEPLOYMENT} --replicas=0
  6. $ done
  7. $ for DEPLOYMENT in productpage-v1 reviews-v2 reviews-v1 ratings-v1; do
  8. $ kubectl --context=context-west-1 scale deployment ${DEPLOYMENT} --replicas=0
  9. $ done

Now use Bookinfo normally to demonstrate that the multicluster deployment is working properly.

Clean up

You can remove Bookinfo from all clusters with:

  1. $ ./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.

Google Kubernetes Engine

Set up a multicluster mesh over two GKE clusters.

IBM Cloud Private

Example multicluster mesh over two IBM Cloud Private clusters.

Replicated control planes

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.