Difficulty: Intermediate
Estimated Time: 10 minutes+

This scenario provides a sandbox to explore features in the Istio service mesh.

... Service Mesh, a dedicated infrastructure layer to run fast, reliable and secure network of microservices, container orchestration systems to provide a higher level of deployment infrastructure abstraction, and evolution of continuous delivery systems [sic] to build, test and deploy microservices as containers. -- Zhamak Dehghani

Before the sandbox is fully ready, there are a few steps needed to complete the sandbox configuration:

  • Istio
  • Istio integrations
  • Bookinfo demonstration application

These setup steps allow you to tweak each installation, such as the version of Istio to use. You can skip the integrations or the Bookinfo application. It's up to you on how you want to configure this sandbox.

Learn and enjoy.

Look for more scenarios to explore other Istio features as they arrive. The Istio Up and Running book offers more learning channels.

References


For a deeper understanding of these topics and more join
Jonathan Johnson
at various conferences, symposiums, workshops, and meetups.

Software Architectures ★ Speaker ★ Workshop Hosting ★ Kubernetes & Java Specialist

Istio Sandbox

Step 1 of 6

Kubernetes Cluster

For this scenario, Katacoda has just started a fresh Kubernetes cluster for you. Verify that it's ready for your use:

kubectl version --short && \ kubectl get nodes && \ kubectl get componentstatus && \ kubectl cluster-info

It should list a two-node cluster, and the control plane components should be reporting Healthy. If it's not healthy, try again in a few moments. If it's still not functioning, refresh the browser tab to start a fresh scenario instance before proceeding.

The Helm package manager used for installing applications on Kubernetes is also available:

helm version --short

Kubernetes Dashboard

You can administer your cluster with the kubectl CLI tool or use the visual Kubernetes dashboard. The Dashboard can be accessed from the tab labeled Kubernetes Dashboard above the command line. When the Dashboard first appears, it will prompt for an access token. At any time you can run this script to access the Dashboard token:

token.sh

This script will display the token in the terminal. Copy the green text using your browser's copy feature then paste the token into the prompt when the Dashboard is accessed. If the Dashboard is still starting up, then Katacoda will report the access error. Once the dashboard Pod reports the status Running it can be accessed:

kubectl get pods -n kube-system -l app.kubernetes.io/name=kubernetes-dashboard