A Service Mesh Is Easy To Swallow In Small Pieces
Andrew Jenkins Eng Lead, Aspen Mesh @notthatjenkins
A Service Mesh Is Easy To Swallow In Small Pieces Andrew Jenkins - - PowerPoint PPT Presentation
A Service Mesh Is Easy To Swallow In Small Pieces Andrew Jenkins Eng Lead, Aspen Mesh @notthatjenkins Why Should I Use A Service Mesh? Managing Microservices Without a Service Mesh Python Node.js Java Flask http.createServer Spring
Andrew Jenkins Eng Lead, Aspen Mesh @notthatjenkins
Service A
Pod Flask OpenTracing Flask Kingpin Lemur Open SSL 110d Python
Service B
Pod
Service C
Pod
http.createServer Jaeger Zoologist Express RL Open SSL 102l Node.js Spring OpenTracing Spring Disco-java Ribbon Open SSL 110f Java
Service A
Pod Flask Service Mesh Python
Service B
Pod
Service C
Pod
http.createServer Node.js Spring Java Service Mesh Service Mesh
Service A
Pod Flask Python
Service B
Pod
Service C
Pod
http.createServer Node.js Spring Java Envoy Envoy Envoy
Config data to Envoys TLS certs to Envoys Monitors K8s for new pods to inject Envoys
Mixer Sidecar Injector Pilot
Istio Control Plane
Ingress Gateway Egress Gateway Envoy
Container
Flask Python
Container
SERVICE A
SERVICE A Envoy
Container
http.createserver Node.js
Container
SERVICE A
SERVICE B Envoy
Container
Spring Java
Container
SERVICE A
SERVICE C
Policy, quota & telemetry
Citadel Aspen Mesh Agent
Telemetry to Aspen Mesh SaaS
Mixer Sidecar Inj Pilot
Ingress
Egress Envoy Flask Python SERVICE A Envoy http.createserver Node.js SERVICE B Envoy Spring Java SERVICE C Citadel Agent
Ingress Cortex Istio-vet User mgt Graph Details Tardis Jaeger
User’s Cluster
Mixer Sidecar Inj Pilot Citadel
Client-ui
Replace
Mutual TLS Mixer Adapters Security Policy
Ingress Gateway App A Sidecar
App B App F Sidecar
Load Balancing Routing TLS Tracing Metrics Resiliency
App C Sidecar App D Sidecar App E Sidecar Cluster 1 Cluster 2
Global TLS
productpage Sidecar
Trace: 278ac3a1… Span: 1 url: /productpage Trace: 278ac3a1… Span: 4bc254… url: /reviews/0 278ac3a1…
x-b3-spanid
https://istio.io/docs/tasks/telemetry/distributed-tracing/#understanding-what-happened
x-b3-traceid x-request-id x-b3-parentspanid x-b3-sampled x-b3-flags x-ot-span-context
Ingress Gateway productpage Sidecar reviews Sidecar ratings Sidecar details Sidecar
Trace: 278ac3a1… Span: 278ac3a1… url: /productpage Trace: 278ac3a1… Span: 1 url: /productpage Trace: 519d1a0… Span: 4bc254… url: /reviews/0 Trace: 519d1a0… Span: 2 url: /reviews/0 Trace: 1a3c322… Span: 8ae6a… url: /details/0 Trace: a4f1347… Span: 1834e0f… url: /ratings/0 Trace: a4f1347… Span: 3 url: /ratings/0 Trace: 1a3c322… Span: 4 url: /details/0
Ingress Gateway productpage Sidecar reviews Sidecar ratings Sidecar details Sidecar
Trace: 278ac3a1… Span: 278ac3a1… url: /productpage Trace: 278ac3a1… Span: 1 url: /productpage Trace: 278ac3a1… Span: 4bc254… url: /reviews/0 Trace: 278ac3a1… Span: 2 url: /reviews/0 Trace: 278ac3a1… Span: 8ae6a… url: /details/0 Trace: 278ac3a1… Span: 1834e0f… url: /ratings/0 Trace: 278ac3a1… Span: 3 url: /ratings/0 Trace: 278ac3a1… Span: 4 url: /details/0 278ac3a1… 278ac3a1…
Ingress Gateway productpage Sidecar reviews Sidecar ratings Sidecar details Sidecar
Trace: 278ac3a1… Span: 278ac3a1… url: /productpage Trace: 278ac3a1… Span: 1 url: /productpage Trace: 278ac3a1… Span: 4bc254… url: /reviews/0 Trace: 278ac3a1… Span: 2 url: /reviews/0 Trace: 278ac3a1… Span: 8ae6a… url: /details/0 Trace: 278ac3a1… Span: 1834e0f… url: /ratings/0 Trace: 278ac3a1… Span: 3 url: /ratings/0 Trace: 278ac3a1… Span: 4 url: /details/0 278ac3a1… 278ac3a1… Trace: 278ac3a1… Span: f32941… CHECK_AUTH Trace: 278ac3a1… Span: a3241… WAIT_QUEUE Trace: 278ac3a1… Span: 96e41… DISK_READ
Replace
App A Sidecar App B Sidecar
Citadel
App A Sidecar App B Sidecar
App D No “choose your front door” DestinationRule appA: ISTIO_MUTUAL … App C Sidecar Use DestinationRules to opt-in mesh services to mTLS – when all clients are mesh services.
App A Sidecar App B Sidecar
MeshPolicy … App C Sidecar All services in the mesh – mTLS on by default App D Sidecar
App A Sidecar App B Sidecar
App C Sidecar Bring your own signing cert External clients and servers in same trust domain App D Sidecar
Citadel
Your CA
Replace
Replace
Replace
Walk by Bakunetsu Kaito Run by Vaibhav Radhakrishnan, Noun Project
Session page on oreillysacon.com/ny O’Reilly Events App