CONNECT
SECURE
CONTROL
OBSERVE
VIDEO: Istio a la carte by Dan Ciruli
using a library, framework or service for:
for which languages?
A network for services, not bytes
details = {
"name" : "http://details:9080",
"endpoint" : "details",
"children" : []
}
ratings = {
"name" : "http://ratings:9080",
"endpoint" : "ratings",
"children" : []
}
source code
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: reviews
...
spec:
hosts:
- reviews
http:
- match:
- headers:
end-user:
exact: jason
route:
- destination:
host: reviews
subset: v2
- route:
- destination:
host: reviews
subset: v1
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: reviews
spec:
hosts:
- reviews
http:
- route:
- destination:
host: reviews
subset: v2
retries:
attempts: 3
perTryTimeout: 2s
List of service meshes
Chaos Engineering is the discipline of experimenting on a distributed system in order to build confidence in the system’s capability to withstand turbulent conditions in production.
— principlesofchaos.org
Thoughtful, planned experiments designed to reveal the weakness in our systems.
— Kolton Andrus (cofounder and CEO of Gremlin Inc.)
Chaos Engineering isn't done to cause problems; it is done to reveal them.
— Nora Jones (Netflix)
Chaos Engineering is exploratory testing of non-functional requirements where ‘non-functional requirements’ are the requirements that if not met render a service non-functional.
— @littleidea
Having a child: Chaos Engineering for everything in your life.
— @icecrime
What happens when ________ ? [fill in the blank]
example: Breaking DynamoDB
kai-zen = change-good
"Chaos": sounds cool and fun for you.
"Resiliency": sounds great for your manager and the system.
Article: Would a Chaos by any other Name
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