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

Empower Your Microservices with Istio Service Mesh - Sydney Alt.Net

Empower Your Microservices with Istio Service Mesh - Sydney Alt.Net

A29d145c9cc68dc0a33a3974e8e68686?s=128

Hossam Barakat

February 26, 2019
Tweet

More Decks by Hossam Barakat

Other Decks in Technology

Transcript

  1. Empower Your Microservices with Istio Service Mesh Hossam Barakat Lead

    Consultant at Readify @hossambarakat_ | www.hossambarakat.net
  2. @hossambarakat_ • Intro to Istio Service Mesh • Istio Architecture

    • Traffic Routing • Reliability • Observability Agenda
  3. @hossambarakat_ Monolith Service Service Service Service

  4. @hossambarakat_ Monolith Container Engine Container Container Container Container Orchestration Engine

  5. @hossambarakat_ Distributed Services Same Host Service A Service B Host

    A Service A Host B Service B Network
  6. @hossambarakat_ How hard can it be?

  7. @hossambarakat_ • The network is reliable. • Latency is zero.

    • Bandwidth is infinite. • The network is secure. • Topology doesn't change. • There is one administrator. • Transport cost is zero. • The network is homogeneous. Fallacies of distributed computing
  8. @hossambarakat_ Using Application Level Frameworks Host A Service A Host

    B Service B Network Service Discovery Retry Policies Service Discovery Retry Policies
  9. @hossambarakat_ Let’s write this new service in Elixir!

  10. @hossambarakat_ Host A Sidecar Proxy Sidecar Proxy Service A Host

    B Service B Service Discovery Retry Policies Sidecar Proxy Service Discovery Retry Policies Network
  11. @hossambarakat_ Enter Service Mesh

  12. @hossambarakat_ Service Mesh Data Plane

  13. @hossambarakat_ Service Mesh Control Plane Control Plane

  14. @hossambarakat_ Istio

  15. @hossambarakat_ Istio Architecture Service A Service B

  16. @hossambarakat_ Istio Architecture Service A Proxy Service B Pilot Proxy

    Mixer Citadel
  17. @hossambarakat_ Istio Architecture Service A Proxy Service B Pilot Proxy

    Mixer Citadel Control Plane
  18. @hossambarakat_ Kubernetes

  19. @hossambarakat_ Pods Pod

  20. @hossambarakat_ Sidecar Pod

  21. @hossambarakat_ Service 10.0.0.2 Pod B 10.0.0.3 Pod C IP: 10.0.0.30

    DNS: myservice Service 10.0.0.1 Pod A
  22. @hossambarakat_ Espresso Shop

  23. @hossambarakat_ Espresso Shop

  24. @hossambarakat_ Espresso Shop

  25. @hossambarakat_ Espresso Shop Services Web Product Catalog Reviews

  26. @hossambarakat_ Espresso Shop on Istio Web Product Catalog Reviews V1

    Proxy Proxy Proxy Reviews V2 Proxy X
  27. @hossambarakat_

  28. @hossambarakat_ Traffic Routing

  29. @hossambarakat_ • Envoy Proxy • Pilot Traffic Routing

  30. @hossambarakat_ • Envoy is an open source edge and service

    proxy, designed for cloud-native applications Envoy Proxy
  31. @hossambarakat_ Pilot

  32. @hossambarakat_ • Virtual Service • Destination Rule Request Routing Configuration

  33. @hossambarakat_ Routing Configurations Web Virtual Service Destination Rule Reviews V1

    Reviews V2
  34. @hossambarakat_

  35. @hossambarakat_ Canary Deployment Web Proxy Reviews V1 Proxy Reviews V2

    Proxy
  36. @hossambarakat_

  37. @hossambarakat_ Browser Based Routing Web Proxy Reviews V1 Proxy Reviews

    V2 Proxy
  38. @hossambarakat_

  39. @hossambarakat_ Reliability

  40. @hossambarakat_ • Timeout • Retry • Fault Injection • Circuit

    breakers Reliability
  41. @hossambarakat_ Timeout Web Proxy Reviews V1 Proxy

  42. @hossambarakat_

  43. @hossambarakat_ Fault Injection Web Proxy Reviews V1 Proxy

  44. @hossambarakat_

  45. @hossambarakat_ Observability

  46. @hossambarakat_ • Distributed Tracing • Metrics • Success rates •

    Request volumes • Request duration • Latency Observability
  47. @hossambarakat_ Mixer

  48. @hossambarakat_ Mixer Adapters https://istio.io/docs/reference/config/policy-and-telemetry/adapters/

  49. @hossambarakat_

  50. @hossambarakat_

  51. @hossambarakat_ Summary https://twitter.com/deniseyu21/status/1032258052114841600

  52. @hossambarakat_ • https://github.com/hossambarakat/EspressoShop • Learn Istio using Interactive Hands-on Scenarios

    (Katacoda) • https://istio.io/docs/ Resources
  53. @hossambarakat_ Questions?

  54. Thanks Hossam Barakat @hossambarakat_ www.hossambarakat.net