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

Service Mesh for your Service Mess

Service Mesh for your Service Mess

Building microservices is easy, operating a microservice architecture is hard. Many companies are successfully using tools like Kubernetes for deploys, but they still face runtime challenges when they have to perform routing, monitoring or security. Having a mess of tens, hundreds or even thousands of services comunicating in production is a job only for the very tough ones... Service Mesh is an architecural pattern that comes to solve these problems with a simple, clean approach.

By deploying sidecar proxies and other control elements interconecting your services, a Service Mesh creates a network abstraction that greatly simplifies the managing of containerized applications and makes it easier to dynamically route, monitor and secure microservice-based applications. In this talk we are going to explain this pattern and how to deploy it by walking through some of the top capabilities a Service Mesh allows, like:

Dynamic Intelligent Requests Routing

Transparent Distributed Tracing

Traffic monitoring (observability)

Security (authentication+encryption)

Policy Enforcements (Rate Limits)

Load Balancing and Circuit Breaking

Fernando Llaca

November 23, 2018
Tweet

More Decks by Fernando Llaca

Other Decks in Technology

Transcript

  1. • 5XX errors? • Timeouts? • Tracing? MicroService Mess -

    Monitoring @NandoLlaca Sales Orders Users Products
  2. MicroService Mess - Monitoring @NandoLlaca $ curl -H “Host: madafaka”

    http:/offers/ $ dig whatthef $ telnet products 80
  3. TLS TLS TLS TLS • Authentication • Authorization MicroService Mess

    - Security @NandoLlaca Offers Sales Orders Users Products TLS
  4. P Sales P Orders P Offers P Products P Users

    Control Plane @NandoLlaca Service Mesh
  5. P Sales P Orders P Offers P Products P Users

    Control Plane @NandoLlaca Not so grumpy human Service Mesh
  6. Offers Control Plane P Products V1 P Products V2 Data

    Plane - LB @NandoLlaca GET http://products/
  7. Offers Control Plane P Products V1 P Products V2 Data

    Plane - LB @NandoLlaca GET http://products/
  8. Offers Control Plane P Products V1 P Products V2 Data

    Plane - LB @NandoLlaca Header(user): any GET http://products/
  9. Offers Control Plane P Products V1 P Products V2 GET

    http://products/ Data Plane - LB @NandoLlaca Header(user): any Header(user): (.+)@mycorp.com
  10. Offers Control Plane P Products V1 P Products V2 JAEGER

    Metrics Traces Data Plane - Monitoring @NandoLlaca
  11. Host A Sidecar Proxy Offers Host B Sidecar Proxy Products

    Encrypted Unencrypted Unencrypted Data Plane - Security @NandoLlaca TLS
  12. • Routing • Load Balancing • Service Discovery • Authentication

    & Authorization • Observability (metrics + tracing) • The human • Configuration UI • Call to sidecar Proxy Configuration APIs Data Plane vs Control Plane Data Plane: Control Plane: @NandoLlaca
  13. Bonus: deploy - proxy per service @NandoLlaca P Sales P

    Orders P Offers P Products P Users Control Plane
  14. P Sales P Orders Offers P Users Control Plane Products

    Bonus: deploy - proxy per host @NandoLlaca