Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Distributed Microservices: Metrics and Tracing with Istio and OpenCensus

Distributed Microservices: Metrics and Tracing with Istio and OpenCensus

With the adoption of microservices, what was once a single application running on a single server has become hundreds of services running on dozens of servers. Microservices give you more freedom, scalability and agility, but makes understanding what’s going on a lot harder. Things like understanding the lifecycle of a request, finding hotspots in your system, and even getting an alert when something is wrong is now much harder!

In this talk, I’ll demo two open source projects, Istio and OpenCensus, that are based on years of production experience at Google and can significantly help you monitor and trace your distributed microservices. Istio can automatically trace RPC calls between services, and OpenCensus makes it easy to add white-box metrics and tracing to your services so you know what’s going on.

Sandeep Dinesh

February 27, 2018
Tweet

More Decks by Sandeep Dinesh

Other Decks in Programming

Transcript

  1. Confidential & Proprietary Load Balancer Users SQL Database Cluster NoSQL

    Database Cluster ETL Pipeline Front End Business Logic Back End Business Logic Data Warehouse Back End Business Logic Back End Business Logic
  2. Confidential & Proprietary Load Balancer Users SQL Database Cluster NoSQL

    Database Cluster ETL Pipeline Front End Business Logic Back End Business Logic Data Warehouse Back End Business Logic Back End Business Logic Load Balancer Users SQL Database Cluster ETL Pipeline Front End Business Logic Back End Business Logic Data Warehouse Back End Business Logic Back End Business Logic Load Balancer Users SQL Database Cluster NoSQL Database Cluster ETL Pipeline Front End Business Logic Back End Business Logic Data Warehouse Back End Business Logic Back End Business Logic Load Balancer Users SQL Database Cluster NoSQL Database Cluster ETL Pipeline Front End Business Logic Back End Business Logic Data Warehouse Back End Business Logic Back End Business Logic
  3. Confidential & Proprietary Tracing: Create trace IDs and tags for

    incoming requests Every service needs to report traces to a collector Every service needs to forward headers downstream You need to be able to query and search these traces
  4. Confidential & Proprietary Stats: Every service needs to report meaningful

    stats to a collector You need to be able to query and search these stats
  5. Confidential & Proprietary Tracing Stats & Metrics - Prometheus -

    Datadog - AppDynamics - Google Stackdriver - Dynatrace - Azure App Insights - Dapper - Zipkin - Dynatrace - Solarwinds - AppDynamics - Solarwinds - Jaeger - AWS X-Ray - Google Stackdriver
  6. Confidential & Proprietary Provide great tracing and stats for ops

    while getting out of the way of developers
  7. Confidential & Proprietary • Request Routing • Load Balancing •

    Authentication • Failure Management • Fault Injection • Circuit Breaking Istio - Cloud Native Service Mesh Deep Dive Video: sandeepdinesh.com/istio-101
  8. Confidential & Proprietary Istio Service B Service A Service C

    100ms 90ms Code Istio Proxy Code Istio Proxy Code Istio Proxy Collector
  9. Confidential & Proprietary OpenCensus Service B Code Collector Function 1

    Function 2 Function 2.1 Function 2.2 Function 3
  10. Istio istio.io OpenCensus opencensus.io Sandeep Dinesh @sandeepdinesh Thank You! Special

    Thanks: JBD @rakyll This Talk: sandeepdinesh.com/istio-open-census Istio Deep Dive Video: sandeepdinesh.com/istio-101