Antics, drift, and chaos
summary
Large distributed systems drift into failure despite correct code because local fixes, retries, logging, and support subsystems introduce new failure modes; the claim is that failure is inevitable but discoverable. Netflix uses Chaos Monkey and an automation platform ChAP to run controlled production experiments and automated canaries, routing small fractions of real traffic and watching metrics — e.g., they report six terminations a minute — and these experiments reliably reveal latent vulnerabilities before they cause outages.
AI-written summary · about
chapters (43)
- 0:00Antics, drift and chaos
- 0:44Add a new test
- 1:27Result: execution of unit test led to an outage
- 1:41Moral: use unit tests sparingly, for they are dangerous
- 1:53Complex systems exhibit unexpected behavior
- 2:07System failure
- 3:03Generalized Uncertainty Principle
- 3:33Error handling
- 5:40Latency increases
- 6:43Support systems
- 8:01Non-critical service failed
- 8:26Lock shared by app threads
- 8:41Lock contention
- 9:09Memory leak bug in agent that monitors health of EBS servers
- 9:27Mitigation
- 9:45Command input entered incorrectly
- 9:57Lorin's conjecture
- 10:14Recap: Antics
- 10:32Act II: Drift
- 10:45Broken parts and sloppy devs
- 11:26Drift into failure
- 11:46Unruly technology
- 11:56Software is hard to reason about
- 13:54Scarcity and competition
- 14:13Efficiency vs thoroughness
- 14:58Decrementalism
- 18:08Sensitive dependence on initial conditions
- 19:27One day...
- 21:09Recap: Drift
- 22:17Make the wrong thing harder
- 23:00Chaos engineering
- 23:23Find vulnerabilities before they become outages
- 23:50External validity
- 24:08Risk: vulnerable to failure of non-critical services
- 26:01Build a hypothesis around steady state behavior
- 26:39Vary real-world events
- 26:51Add latency to RPC calls
- 27:07Route prod traffic to ChAP clusters
- 27:29Integrate with deployment pipelines
- 27:40Minimize blast radius
- 27:59Takeaways
- 28:122. Reasonable human decisions can lead to dangerous states
- 28:27Chaos provides incentives
related talks
38mChaos Engineering
46mDesigning a System for Chaos
41mHow Netflix Embraces Failure to Improve Resilience and Maximize Availability
38mChaos Engineering: A Step Towards Resilience
36mChaos Engineering
18mChaos Engineering: Break It On Purpose
48mChaos Engineering: The Path to Reliability
55mIncident Management at Netflix Velocity
