Compute Infrastructure

Obtain and visualise uniform metrics, logs, traces across microservices using Istio

Share this post:

In this blog post, you will learn how to setup Istio on your Kubernetes cluster using Helm or Kubernetes-YAML and you will be using add-ons like Jaeger, Prometheus, Grafana, & Weavescope to collect, query and visualize metrics, logs & traces (in-depth telemetry) for your microservices.

If you have read our previous blog post about Modernizing your old JPetStore app with containers, Kubernetes and AI, there is a hidden jewel (extension) in the jpetstore-kubernetes repository and it addresses one of the many capabilities of Istio, a service mesh.

Istio logo

What is Istio?

Istio is an open platform to connect, secure, and manage a network of microservices, also known as a service mesh, on cloud platforms such as Kubernetes in IBM® Cloud Kubernetes Service. With Istio, you can manage network traffic, load balance across microservices, enforce access policies, verify service identity, and more.

Istio addresses many of the challenges faced by developers and operators as monolithic applications transition towards a distributed microservice architecture. The term service mesh is often used to describe the network of microservices that make up such applications and the interactions between them. As a service mesh grows in size and complexity, it can become harder to understand and manage. Its requirements can include discovery, load balancing, failure recovery, metrics, and monitoring, and often more complex operational requirements such as A/B testing, canary releases, rate limiting, access control, and end-to-end authentication.

Setup Istio

You can install, setup and deploy Istio sidecars into your cluster in two ways

  1. Using Helm
  2. Using Kubernetes-YAML files

Once deployed and with the application responding to traffic, the graphs will start highlighting what’s happening under the covers.

Prometheus scrapes metrics from instrumented jobs, either directly or via an intermediary push gateway for short-lived jobs. It stores all scraped samples locally and runs rules over this data to either aggregate and record new time series from existing data or generate alerts. Grafana or other API consumers can be used to visualize the collected data.

Grafana Istio Dashboard

Following the steps in the respective README files, you can generate a service graph, visualise Cluster using Weave Scope, and also check distributed tracing with Jaeger.

Weavescope dashboard

Further learning…

More Compute Infrastructure stories

How to Run SAP Workloads in the Cloud on a Budget

We’ve completed SAP HANA certification for our latest generation of Intel Broadwell-based SAP HANA servers, and they’re now generally available worldwide. Learn about how you can migrate your SAP workloads to the cloud—all at a low cost.

Continue reading

Aerospike on IBM Cloud bare metal servers: Powering your cognitive architectures

Fast and flexible, we hear this constantly when talking about cloud infrastructure, but it’s not to be taken lightly. A fast and flexible solution could make or break your workload and overall cloud performance. This means you need to choose a cloud solution that provides fast and flexible infrastructure, all while meeting the constant demands of […]

Continue reading

Elinar Takes the Mystery out of GDPR with help from IBM Cloud and Watson

Even though GDPR May 25 deadline has come and gone, many companies are still scrambling to meet compliance. Here at Elinar, we are busier than ever. Our data discover solution, AI Miner, built with Watson APIs, for use on the IBM Cloud platform, can quickly uncover mysterious data with a quick scan on your data mass for records which have privacy settings that need updating to meet GDPR compliance.

Continue reading