chapter seven

7 Observability: understanding the behavior of your services

 

This chapter covers

  • Basic request-level metric collection
  • Understanding Istio’s standard service-to-service metrics
  • Using Prometheus to scrape workload and control-plane metrics
  • Adding new metrics in Istio to track in Prometheus

You may have heard the term observability start to creep into the vocabulary of software engineers, operations and site-reliability teams recently. These teams have to deal with the near exponential increase in complexity when operationalizing a microservices-style architecture on cloud infrastructure. When we start to deploy our application as 10s or 100s of services (or more) per application, we increase the number of moving pieces, increase reliance on the network for things to succeed, and also increase the number of things that can and do go wrong.

7.1 What is observability?

7.1.1 Observability vs Monitoring

7.1.2 How Istio helps with observability

7.2 Exploring Istio metrics

7.2.1 Metrics in the data plane

7.2.2 Metrics in the control plane

7.3 Scraping Istio Metrics with Prometheus

7.3.1 Set up Prometheus and Grafana

7.3.2 Configuring the Prometheus Operator to scrape Istio control plane and workloads

7.4 Customizing Istio’s standard metrics

7.4.1 Configuring existing metrics

7.4.2 Creating new metrics

7.4.3 Grouping calls with new attributes

7.5 Summary