How to Gain Insights from Istio by Leveraging Tools Like Jaeger, Prometheus and Cortex CNCF WEBINAR SERIES Neeraj Poddar Platform Lead
How to Gain Insights from Istio by Leveraging Tools Like Jaeger, Prometheus and CortexCNCF WEBINAR SERIES
Neeraj PoddarPlatform Lead
© 2018 Cloud Native Computing Foundation2
Service A
Container 1
Microservices Without a Service Mesh
Flask
OpenTracing Flask
Kingpin
Lemur
Open SSL 110d
Python
Service B
Container 1
http.createServer
Jaeger
Zoologist
Express
Open SSL 102l
Node.js
Service C
Container 1
Spring
OpenTracing Spring
Disco-java
Ribbon
Open SSL 110f
Java
© 2018 Cloud Native Computing Foundation3
Service A
Container 1
Microservices With a Service Mesh
Flask
Service Mesh
Python
Service B
Container 1
http.createServer
Service Mesh
Node.js
Service C
Container 1
Spring
Service Mesh
Java
© 2018 Cloud Native Computing Foundation4
Service Mesh Architectures
© 2018 Cloud Native Computing Foundation5
Service B Service C
Container 2 Container 2
Service A
Container 2
Container 1
Microservices with Istio
Flask
Python
Container 1
http.createServer
Node.js
Container 1
Spring
Java
Istio Control Plane
Config data to EnvoysPolicy,quota,telemetry
TLS certs to Envoys Monitors K8s for new pods to inject Envoy
EnvoyEnvoyEnvoy
Mixer Citadel Sidecar InjectorPilot
© 2018 Cloud Native Computing Foundation6
Istio Features
A bundling of capabilities
• Service discovery• Load balancing• Advanced traffic management• Enhanced security• Policy• Tracing• Metrics
© 2018 Cloud Native Computing Foundation7
Benefits of Tracing
Service dependency analysis
Track requests across multiple microservices
Identify performance bottlenecks
© 2018 Cloud Native Computing Foundation8
Tracing with Istio
• Automatic tracing of all network requests• Context handling• Asynchronous span reporting
– Start and end times
– Source & destination service– HTTP headers
• Application header propagation• Multiple backend integrations
– Zipkin– Jaeger
Distributed Tracing with Istio in AWSTracing gRPC with Istio
© 2018 Cloud Native Computing Foundation9
Jaeger
• OpenTracing compatible API• Flexible & scalable architecture• Multiple storage backends
– Cassandra– Elasticsearch
• Advanced sampling• Accepts Zipkin spans• CNCF project & active OS community
• Great UI
© 2018 Cloud Native Computing Foundation10
Jaeger UI
• Jaeger has gained the most traction and is what we use– CNCF project– Thriving community– Great UI
© 2018 Cloud Native Computing Foundation11
Benefits of Metrics
Monitoring & alerting
Debugging & fault analysis
Historical view
© 2018 Cloud Native Computing Foundation12
Metrics with Istio
• Envoy stats– Request Pending– Connection bytes buffered– SSL failures
• Mixer service stats– Request latency– Request counts
• Custom metrics• Telemetry monitoring options
– StatsD– Stackdriver– Prometheus
Envoy Sta ts O verv iew
© 2018 Cloud Native Computing Foundation13
Prometheus
• Pull model• Flexible query API• Efficient storage• Dashboard integrations
– Grafana• Exporters
– Prom etheus In teg ra tions
• CNCF project & strong OS community
© 2018 Cloud Native Computing Foundation14
Enhancing Prometheus with Cortex
• Long term durable storage– AWS DynamoDB– Bigtable– Cassandra
• Scalable Prometheus query API• Multi-tenancy• Easy to manage• Intent to add as CNCF project
© 2018 Cloud Native Computing Foundation15
More on Getting the Most from Istio
Istio 0.8 Release• Stability & Scalability • Envoy v2• Istio v1alpha3
We are active users of Istio and are happy to talk in greater depthPlease feel free to reach out: • [email protected]• http://aspenmesh.io/blog
v0.8 release
Questions
Thank You