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

カオスエンジニアリングのススメ

 カオスエンジニアリングのススメ

2020/6/26の「Developers.IO 2020 CONNECT」での発表資料です。

KyoheiSaiki

June 26, 2020
Tweet

More Decks by KyoheiSaiki

Other Decks in Programming

Transcript

  1. 26 システムに起こる障害の分類 Unknown Known 考えつかない、 対処法は分かる Known Known 考えつく、 対処法も分かる

    Unknown Unknown 考えつかない、 対処法も分からない Known Unknown 考えつく、 対処法は分からない 理解 経験
  2. 27 カオスエンジニアリングとテストの棲み分け Unknown Known 考えつかないが、 対処法を知っている Known Known 考えつくし、 対処法を知っている

    Unknown Unknown 考えつかないし、 対処法も知らない Known Unknown 考えつくが、 対処法は知らない 理解 経験 テスト カオス カオス カオス
  3. 32 カオスエンジニアリングのサイクル 1.定常状態の把握 2.仮説の構築 3.実験の実施 4.結果の分析 5.改善 Applying chaos engineering

    principles for building fault-tolerant applications より引⽤ https://speakerdeck.com/adhorn/applying-chaos-engineering-principles-for-building-fault-tolerant-applications
  4. 35 1. 定常状態の把握 • 定常状態 = システムが正常に動作している状態 • システムの重要な機能に関するビジネスメトリクスに注⽬ •

    この値が普段と変化しなければシステムは正常 https://medium.com/netflix-techblog/sps-the-pulse-of-netflix-streaming-ae4db0e05f8a 毎秒ビデオのストリーミングを開始するユーザー数@Netflix
  5. 38 2. 仮説の構築 準備 • システム構成図 • 過去の障害記録(可能であれば) 参加者 •

    開発担当 • 運⽤担当 • ビジネスサイド 成果物イメージ
  6. 41 3. 実験の実施 選択した仮説に基づき、実験⽅法をデザイン • 障害注⼊⽅法 • どこに、どのように、どのくらい、ツールは︖ • 実施⽇時

    • 関係者が参加&対応しやすい営業時間 • ⾮常時のロールバックプラン • 必要事項をドキュメントにまとめて関係者に共有
  7. 48 Developers.IO 概要 • 「やってみた」系技術メディア • ⽉間 290万PV, 90万UU •

    22,000件を超えるブログ記事 • カオスエンジニアリングに関する 記事は現在約50件 https://dev.classmethod.jp/
  8. 65 組織のカオスエンジニアリング • ⼀番複雑なのは⼈間 • 組織の弱点、特にSPoF (単⼀障害点)をあぶり出す • 障害注⼊も⾏う •

    重要⼈物に発⾔させない・嘘をつかせる • メール等のレスポンスを極端に遅くする https://speakerdeck.com/chaosconf/keynote-chaos-engineering-for-people-systems