Chaos Engineering

with a service mesh


  • from code to service (mesh)
  • chaos engineering
  • automation with chaostoolkit

Sylvain ( ChaosIQ )

Chaos toolkit

Julien Bisconti

SRE / Data Engineer

Google Cloud Platform icon



How long

from monolith to microservices ?

8 fallacies of distributed computing

  1. The network is reliable.
  2. Latency is zero.
  3. Bandwidth is infinite.
  4. The network is secure.
  1. Topology doesn't change.
  2. There is one administrator.
  3. Transport cost is zero.
  4. The network is homogeneous.

source (wikipedia)
RFC 1925 ( 12 Networking Truths )


Containers: lightweight VMs

  • 12 factor app
  • easier deploy
  • reproducible build

but ...

Deployment concerns

  • Scaling up and down
  • Redundancy
  • Scheduling / Orchestration
  • Service Discovery
  • Resiliency
  • Rolling out and back
  • Health checks
  • Secret and config

➡️ kubernetes

but ...

Kubernetes concerns

  • Logging
  • Tracing
  • Metrics
  • Dependency visualisation
  • Service identity and Auth
  • Circuit breaking
  • Traffic flow and policies
  • Failover
  • Fault injection
  • ...

➡️ ️ use code?


  • combination language/framework/version/feature
  • maintain, upgrade, migrate, retire
  • code pollution and complexity (+ testing)
  • deployment / rolling update
  • language/framework/version lock-in
  • debugging

➡️ ️ move it to the infrastructure

Extract code

remove concerns from the application

👉    move it the infra

Sidecar proxy

The overall architecture of an Istio-based application.
envoy proxy

The network should be transparent to applications.
When network and application problems do occur, it should be easy to determine the source of the problem.

How to manage a fleet of proxy

👉 service mesh

What is a service mesh

( What problems does it solve )

Communication between services

A network for services, not bytes


use case
use case
define SLI and SLO

source: new relic blog


and I'm sorry 🙏
If you had to maintain my code
I hope you learned more by maintaining it
than me by writing it



Slides made with Reveal.js and hugo-reveal