Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Chaos Engineering - W-JAX 2018
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Benjamin Wilms
November 08, 2018
Technology
320
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Chaos Engineering - W-JAX 2018
Chaos Engineering @ W-JAX 2018
- ChaosToolkit
- ChaosHub
- Chaos Monkey for Spring Boot
Benjamin Wilms
November 08, 2018
More Decks by Benjamin Wilms
See All by Benjamin Wilms
Chaos Engineering @ Spring I/O 2019 Barcelona
mrbw
1
520
Chaos Engineering - AWS Community Days 2018
mrbw
0
890
Chaos Engineering @ JUG Bonn
mrbw
0
180
Chaos Engineering @ Microservices Meetup Berlin
mrbw
0
150
Spring Cloud Netf
mrbw
1
220
Hysterie in verteilten Systemen - Hystrix im Einsatz
mrbw
0
360
Resilience mit Hystrix: Fehlertoleranz statt Hochverfügbarkeit
mrbw
0
250
Hystrix @ Vaadin Meetup Düsseldorf
mrbw
0
96
Hystrix Warstories
mrbw
0
59
Other Decks in Technology
See All in Technology
サーバー常駐型の 簡易障害調査AI エージェントを作ってみた話
masayoshi
1
490
サイボウズ 開発本部採用ピッチ / Cybozu Engineer Recruit
cybozuinsideout
PRO
12
86k
Introduction to Sansan for Engineers / エンジニア向け会社紹介
sansan33
PRO
6
77k
マイナンバーカード本人確認の実装比較(OAuth/OIDC Numa (Immersion) Workshop 2026) / 20260825 numa-12
oidfj
PRO
0
380
名刺メーカーDevグループ 紹介資料
sansan33
PRO
0
1.3k
信頼性はSREだけのものじゃない
hkawaras
0
390
Distributed Transactions Under Fire: Building a Zero-Oversell Flash Sale Platform with Amazon Aurora DSQL
yama3133
1
110
Introduction to Bill One Development Engineer
sansan33
PRO
0
480
AI駆動開発はどこまで来たのか? ファインディの最新実態調査で読み解く現在地 Devin Con Tokyo
akiratom
4
2.1k
Windows の互換機能 - 古いプログラムはなぜ動作できるのか
murachiakira
PRO
0
140
AI時代のデータ基盤を考える問い
pacocat
0
770
あなたの知らないバージョン命名規則
sat
PRO
2
870
Featured
See All Featured
Context Engineering - Making Every Token Count
addyosmani
9
1.1k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
31
3.3k
Speed Design
sergeychernyshev
33
2k
Accessibility Awareness
sabderemane
1
190
XXLCSS - How to scale CSS and keep your sanity
sugarenia
249
1.3M
The SEO identity crisis: Don't let AI make you average
varn
0
550
How STYLIGHT went responsive
nonsquared
100
6.3k
BBQ
matthewcrist
89
10k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
880
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.4k
Building the Perfect Custom Keyboard
takai
2
850
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
11k
Transcript
WITHSTANDING TURBULENT CONDITIONS IN PRODUCTION
BENJAMIN WILMS CODECENTRIC @MRBWILMS GITHUB.COM/MRBW
None
None
FROM A DEVELOPER'S POINT OF VIEW
None
None
None
80% - 90% ...
HOW OUR BABY BEHAVES IN PRODUCTION?
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
JEPSEN IS AN EFFORT TO IMPROVE THE SAFETY OF DISTRIBUTED
DATABASES, QUEUES, CONSENSUS SYSTEMS, ETC.
None
None
CHAOS ENGINEERING IS NOT... ...TO CAUSE CHAOS!
CHAOS ENGINEERING IS NOT... ...BREAKING THINGS JUST TO BREAK THEM!
CHAOS ENGINEERING IS NOT... ...TO RUN A CHAOS MONKEY!
CHAOS ENGINEERING IS NOT... ...TO LET THE WHOLE SIMIAN ARMY
OUT OF THE CAGE!
CHAOS ENGINEERING IS NOT... ...TO USE IT IN PRODUCTION!
CHAOS ENGINEERING IS NOT... ...TO USE IT IN PRODUCTION, FIRST!
CHAOS ENGINEERING IS NOT... ...TO REPLACE OTHER KINDS OF TESTS!
CHAOS ENGINEERING IS NOT... ...TO DO IT ALONE AND WITHOUT
ANY ARRANGEMENT!
None
None
THIS IS BOB
HE IS RESPONSIBLE FOR SERVICE A
THESE ARE BOB'S TEAMMATES
THEY DEPEND ON BOB'S SERVICE
THEY BLAME BOB FOR THE BAD PERFORMANCE OF SERVICE A
BE SOCIAL AND COMMUNICATIVE SHARE YOUR EXPERIENCES AND THOUGHTS STOP
BLAMING EACH OTHER WORK TOGETHER
None
None
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.
None
None
None
STEADY STATE ORDERS PER MINUTE ON A TYPICAL MONDAY MORNING
STEADY STATE ORDERS PER MINUTE
STEADY STATE EXPERIMENT WAS CANCELED
WHAT SHOULD HAPPEN WHEN...
None
None
IF YOU KNOW YOUR CHAOS EXPERIMENT WILL FAIL... ...DON'T DO
IT!!!
None
CPU BURNING - INSPIRED BY TAMMY BUTOW # burn.zsh while
true; do openssl speed; done EOF # cpu_burning.zsh for i in {1..32} do nohup /bin/zsh burn.zsh & done
STRESS CPU stress cpu 2 io 1 vm 1 vmbytes
128M timeout 10s verbose
TRAFFIC CONTROL (TC) PACKAGE IPROUTE2
None
PLATFORMS
CHAOS TOOLKIT FELT IN LOVE WITH CHAOS MONKEY FOR SPRING
BOOT
HOW DOES IT WORK <dependency> <groupid>de.codecentric</groupid> <artifactid>chaosmonkeyspringboot</artifactid> <version>2.0.1</version> </dependency>
(SIDECAR PATTERN) java cp yourapp.jar Dloader.path=chaosmonkeyspringboot2.0.1jarwithdependencies.jar org.springframework.boot.loader.PropertiesLauncher spring.profiles.active=chaosmonkey spring.config.location=file:./chaosmonkey.properties
WATCHER
ASSAULTS
SPRING BOOT ACTUATOR ENDPOINT CONTROL VIA REST ENDPOINT AT RUNTIME
None
None
None
None
None
None
None
None
None
None
None
FINDINGS?
None
None
None
None
BENJAMIN WILMS @MRBWILMS
[email protected]
SHOPPING DEMO CHAOS MONKEY FOR SPRING
BOOT CHAOSTOOLKIT & CHAOSHUB