Difficulty: Intermediate
Estimated Time: 20 minutes

In this scenario you will learn how to use OpenTracing, Jaeger and Istio to identify slow Microservices.

Identifying Slow Services with Distributed Tracing

Step 1 of 6

Step 1 - Bookinfo Sample

In this scenario, we'll use the Istio BookInfo sample application. The application is composed of four microservices:

  • The productpage microservice is the homepage, populated using the details and reviews microservices.
  • The details microservice contains the book information.
  • The reviews microservice contains the book reviews. It uses the Rating microservice for the star rating.
  • The ratings microservice contains the book rating for a book review.

The deployment included three versions of the reviews microservice to showcase different behaviour and routing:

  • Version v1 doesn’t call the Rating service.
  • Version v2 calls the Rating service and displays each rating as 1 to 5 black stars.
  • Version v3 calls the Rating service and presents each rating as 1 to 5 red stars.

The services communicate over HTTP using DNS for service discovery. An overview of the architecture is shown below.

BookInfo Architecture

The application doesn't understand anything about Istio, Kubernetes or metrics. It could be deployed onto any system.

The Bookinfo application should have already been deployed to the Kubernetes cluster along with the Istio Control Plane.

You can view the application status via kubectl get pods

This tab will not be visible to users and provides only information to help authors when creating content.

Creating Katacoda Scenarios

Thanks for creating Katacoda scenarios. This tab is designed to help you as an author have quick access the information you need when creating scenarios.

Here are some useful links to get you started.

Running Katacoda Workshops

If you are planning to use Katacoda for workshops, please contact [email protected] to arrange capacity.

Debugging Scenarios

Below is the response from any background scripts run or files uploaded. This stream can aid debugging scenarios.

If you still need assistance, please contact [email protected]