Difficulty: Advanced
Estimated Time: 1 hour

Apply some chaos engineering by throwing in some HTTP errors or network delays. Understanding failure scenarios is a critical aspect of microservices architecture (aka distributed computing)

Download the ebook "Introducing Istio Service Mesh for Microservices" for FREE at https://developers.redhat.com/books/introducing-istio-service-mesh-microservices/.

You can also run this tutorial on your machine, visit http://bit.ly/istio-tutorial.

Don’t stop now! The next scenario will only take about 10 minutes to complete.

Fault Injection

Step 1 of 5

Install microservices

Before we start this scenario, we need to deploy all microservices (customer, preference, recommendation[v1:v2]).

There's a script called install-microservices.sh that will

Execute this script: ./install-microservices.sh

The script will take between 2-5 minutes to complete. Don't worry if you see error messages.

When the scripts ends, watch the creation of the pods, execute oc get pods -w

Once that the microservices pods READY column are 2/2, you can hit CTRL+C.

Try the microservice by typing curl http://customer-tutorial.[[HOST_SUBDOMAIN]]-80-[[KATACODA_HOST]].environments.katacoda.com

It should return:

customer => preference => recommendation v{1:2} from {hostname}: 1