$30 off During Our Annual Pro Sale. View Details »

20200319-ssmjp_ResilienceEngineering

w4yh
March 19, 2020

 20200319-ssmjp_ResilienceEngineering

w4yh

March 19, 2020
Tweet

More Decks by w4yh

Other Decks in Technology

Transcript

  1. レジリエンス
    エンジニアリング
    を学んでいるが...
    ssmjp 202003 (2020/03/19)
    #ssmjp

    View Slide

  2. Who am I?
    @w4yh
    運用系インフラエンジニア
    よく使うツール:
    StackStorm /
    HabbleStack /
    Kondate(itamae) /
    Expect /
    Zoho
    資料は
    speakerdeck.com/w4yh/

    View Slide

  3. TABLE OF CONTENTS
    01. Safety-Ⅱ
    02. レジリエンスエンジニアリング
    03. 過去の記憶
    04. 今の理解と新たな疑問

    View Slide

  4. ACKNOWLEDGEMENT
    今日話さない事
    レジリエンスに関する以下のようなふわっと表現
    「Kubernetesでmicroservicesやってるからレジリエント」
    「松のような剛の強さではなく竹のような柔のしなやかな強さ」
    おことわり
    論説や出典は Elik Hollagel先生の書籍や論文に強く依拠
    例えば“Seeking SRE”にもResilienceに言及している章があるがご了承

    View Slide

  5. 背景
    概念: Safety-Ⅱ
    実践: レジリエンスエンジニアリング
    ツール/手法: RAG(レジリエンス評価グリッド)、
    FRAM(機能共鳴解析手法)
    実装: ? ここまで到達したいというお気持ち

    View Slide

  6. Safety-II
    Safety-Ⅱとは
    「変化の激しい世の中に対応した安全管理」
    IT業界で言えば仮想化,クラウド,コンテナの時に言ったであろう
    "ビジネスの変化に対応できるアジリティを備える“
    実践は”レジリエンス エンジニアリング”
    状況が絶えず変化する環境において「完璧な手順書」は作成できない
    出典: 「ヒューマンエラーと新しい安全マネージメント」
    NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))
    http://www.nhk.or.jp/kaisetsu-blog/400/256906.html

    View Slide

  7. Safety-IとII
    Safety-Ⅰ(従来の考え方)との比較
    Safety-Ⅰ Safety-Ⅱ
    失敗に注目して要因をつぶす 成功に注目して成功を増やす
    受動的な安全管理を不具合発覚
    時に行う
    先行的な対応で継続的に発展さ
    せる
    パフォーマンスの変動は有害な
    ものでありできる限り防ぐ
    パフォーマンスの変動は必然で
    あり有用である。モニタリング
    して管理活用されるべき
    出典: 「ヒューマンエラーと新しい安全マネージメント」
    NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))

    View Slide

  8. Safety-II
    システムと人の位置付け
    Safety-Ⅰ Safety-Ⅱ
    人間の失敗がシステムを危険な
    状態にする
    人間の柔軟性が危険なシステム
    を安全に機能させている
    事故の80-90%の原因は人間に
    ある
    成功のほとんどにも人間が関与
    している
    出典: 「ヒューマンエラーと新しい安全マネージメント」
    NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))

    View Slide

  9. Safety-II
    Safety-Ⅱと自動化
    Safety-Ⅱ
    Safety-Ⅰ
    置き換えるものではなく
    Safety-Ⅰでカバーできない
    領域をカバーするのが
    Safety-Ⅱ
    “人はミスをするから自動化”
    はSafety-Ⅰのみの視点
    出典: 「ヒューマンエラーと新しい安全マネージメント」
    NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))

    View Slide

  10. レジリエンスエンジニアリング
    実践: レジリエンスエンジニアリング
    概念は分かってきたので実装につながるような実践の指針を会得したい
    考え方:
    ・システムは本質的に危険なもの
    ・人間と組織の柔軟性(レジリエンス)がシステムを安全に機能させている
    ・失敗事例より成功事例 (日常の業務実態)に注意を向けるべし
    ・レジリエンスを高める方策が安全確保に重要
    出典: 「ヒューマンエラーと新しい安全マネージメント」
    NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))

    View Slide

  11. レジリエンスエンジニアリング
    レジリエンスの評価軸
    ・対処するポテンシャル
    ・監視するポテンシャル
    ・学習するポテンシャル
    ・予見するポテンシャル
    出典: 「Safety-IIの実践」第4章 (海文堂 2019)

    View Slide

  12. レジリエンスエンジニアリング
    備えるべき特性
    予見 注意 対処
    何を予測
    すべきか
    知ってい

    何を監視
    すべきか
    知ってい

    何を
    するべきか
    知っている
    学習
    更新
    知識 技量 リソース 時間
    出典: 「レジリエンスエンジニアリング」 p342 図E.1
    (予見) (注意) (合理的対応)
    ダイナミックな進展
    システム

    View Slide

  13. レジリエンス
    この特性には見覚えがある

    View Slide

  14. Clustering?
    備えるべき特性
    ・注意
    ・予見
    ・対処
    クラスタリングソフトウェア
    ・定期的なヘルスチェック
    ・エラーにつながる
    メトリクスの傾向計測
    ・切替処理スクリプト

    View Slide


  15. レジリエンスエンジニアリングとは
    クラスタリングソフトウェアの
    カスタマイズ・チューニングのことである
    - w4yh

    View Slide

  16. Clustering?
    ^H^H そんなまさか
    「きちんと切り替わらなかった」
    「スプリットブレインになった」
    みたいなトラウマにまた遭遇しなければならないのか?

    View Slide

  17. どこで間違えたのか
    “対処”
    クラスタリングソフトは基本的にActive/Standbyを入れ替えて
    元と同じ状況へ復帰する固定的な対応
    停止だけでなく劣化などにも対応して成功し続けるためのプロアク
    ティブな仕組みとは言えない..

    View Slide

  18. どこで間違えたのか
    “予見”
    既知を実装済にする -- リアクティブ(ex. 監視項目の追加)
    未知を予見可能にする -- プロアクティブ(ex. 傾向分析)
    リソース不足などに起因する劣化の場合、
    切り替えるだけでは改善は見込めない..

    View Slide

  19. どこで間違えたのか
    「レジリエントなシステム」?
    “安全はシステムや組織が有しているものではなく、
    システムや組織が実現するものである”
    “レジリエンスエンジニアリング” p339
    (cf. 「ほとんどすべての設計というものは、設計しているシステムのあらゆる挙動
    について、相対的に無知の状態で行われるものである。」
    ”社会技術システムの安全分析” 海文堂 2013 / (“Design Paradigms” Cambridge
    University Press 1994) )

    View Slide

  20. イマココ
    現時点の仮説
    監視やメトリクス計測によるシステムへの理解と洞察を深める
    ことが大事
    Observability & Controllability
    Continuous Observability & Feedback
    for Flexible Controllability

    View Slide

  21. 新たな疑問
    ログ?
    最近K8sのログ
    管理に活気があ
    る印象。メトリ
    クスに加えてロ
    グもフィードバ
    ックに必要?
    宣言的?
    変化し続ける状
    況へ対応する上
    で”宣言的”な仕
    組みの相性は良
    いのか?
    カオス?
    次スライドのツ
    イート

    View Slide

  22. 新たな疑問
    QConLondon 2020 Day3 (2020/03/04)
    “Chaos and Resilience: Architecting for Success”セッション
    “未知を既知にする”
    →カオスエンジニアリング!
    と思ったら牽制されたので
    これから勉強します...

    View Slide

  23. レジリエンスを
    学んでいるが
    奥が深すぎる

    View Slide

  24. まとめ
    “レジリエンスエンジニアリングと
    それを支える概念であるSafety-II
    について学んで理解を深めた”
    “レジリエンスを注意, 予見, 学習,
    対処という4つの特性から視ること
    を学んだ。ちょっと勘違いもした”
    “瞬間や固定的なものではなく継続
    的な学習フィードバックを伴う取り
    組みで実現していくものではないか
    とレジリエンスを捉えるに至った”

    View Slide

  25. CREDITS: This presentation template was created
    by Slidesgo, including icons by Flaticon, and
    infographics & images by Freepik.
    Do you have any questions?
    @w4yh
    THANKS!
    Please keep this slide for attribution.

    View Slide

  26. 参考資料
    書籍:
    ● “レジリエンスエンジニアリング 概念と指針” 日科技連
    2012
    ● "Safety-IIの実践 レジリエンスポテンシャルを強化す
    る” 海文堂 2019
    ● "Safety-I & Safety-II 安全マネジメントの過去と未来”
    海文堂 2015
    ● “社会技術システムの安全分析 -FRAMガイドブック“ 海
    文堂 2013
    Web:
    ● NHK視点・論点 2016/11/09放送分「ヒューマンエラー
    と新しい安全マネージメント」
    http://www.nhk.or.jp/kaisetsu-blog/400/256906.html
    ● “本当は恐ろしい分散システムの話”
    https://www.slideshare.net/kumagi/ss-81368169
    ● ”分散システムについて語らせてくれ”
    https://www.slideshare.net/kumagi/ss-78765920
    ● nora_js さんのツイート
    https://twitter.com/nora_js/status/123521801765255
    1683

    View Slide