Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Speaker Deck
PRO
Sign in
Sign up for free
20200319-ssmjp_ResilienceEngineering
w4yh
March 19, 2020
Technology
5
1k
20200319-ssmjp_ResilienceEngineering
w4yh
March 19, 2020
Tweet
Share
More Decks by w4yh
See All by w4yh
StackStormによるCloudSlang対応とはなにだったのか
w4yh
0
560
JKD18.12-2T2_Pharosでk8s環境を楽して割り切って作る / JKD1812_2T2_Pharos
w4yh
0
730
20160913-IrecommendStackStormtoyou-w4yh
w4yh
3
2.7k
StackStorm
w4yh
1
480
StackStorm-qpstudy201604
w4yh
0
86
ChangeManagement
w4yh
0
64
Zohoを褒めたり叱ったり.pdf
w4yh
0
53
Other Decks in Technology
See All in Technology
オンプレk8sとEKSの並行運用の実際
ch1aki
0
280
組織に対してSREを適用するとどうなるか
kuniim
7
2.8k
ChatGPT for Hacking
anugrahsr
0
4.4k
OCI技術資料 : ロード・バランサー 詳細 / Load Balancer 200
ocise
2
7.2k
AI Services 概要 / AI Services overview
oracle4engineer
PRO
0
170
NGINXENG JP#2 - 1-NGINX-エンジニアリング勉強会-きょうの見どころ
hiropo20
0
110
OCIコンテナサービス関連の技術詳細 /oke-ocir-details
oracle4engineer
PRO
0
770
Oktaの管理者権限を適切に移譲してみた
shimosyan
2
270
Deep Neural Networkの共同学習
hf149
0
290
Pentesting Password Reset Functionality
anugrahsr
0
470
IoTを始めたきっかけの話と個人でできるIoTの今後 / 新年LT会「私の愛するIoT 2023」
you
0
230
Bill One 開発エンジニア 紹介資料
sansantech
PRO
0
120
Featured
See All Featured
GraphQLとの向き合い方2022年版
quramy
20
9.9k
Code Review Best Practice
trishagee
50
11k
Building Better People: How to give real-time feedback that sticks.
wjessup
346
17k
How to Ace a Technical Interview
jacobian
270
21k
Building Your Own Lightsaber
phodgson
96
4.9k
Making the Leap to Tech Lead
cromwellryan
117
7.7k
Producing Creativity
orderedlist
PRO
335
38k
Rebuilding a faster, lazier Slack
samanthasiow
69
7.5k
Git: the NoSQL Database
bkeepers
PRO
419
60k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
29
7.9k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
31
20k
Happy Clients
brianwarren
90
5.8k
Transcript
レジリエンス エンジニアリング を学んでいるが... ssmjp 202003 (2020/03/19) #ssmjp
Who am I? @w4yh 運用系インフラエンジニア よく使うツール: StackStorm / HabbleStack /
Kondate(itamae) / Expect / Zoho 資料は speakerdeck.com/w4yh/
TABLE OF CONTENTS 01. Safety-Ⅱ 02. レジリエンスエンジニアリング 03. 過去の記憶 04.
今の理解と新たな疑問
ACKNOWLEDGEMENT 今日話さない事 レジリエンスに関する以下のようなふわっと表現 「Kubernetesでmicroservicesやってるからレジリエント」 「松のような剛の強さではなく竹のような柔のしなやかな強さ」 おことわり 論説や出典は Elik Hollagel先生の書籍や論文に強く依拠 例えば“Seeking
SRE”にもResilienceに言及している章があるがご了承
背景 概念: Safety-Ⅱ 実践: レジリエンスエンジニアリング ツール/手法: RAG(レジリエンス評価グリッド)、 FRAM(機能共鳴解析手法) 実装: ?
ここまで到達したいというお気持ち
Safety-II Safety-Ⅱとは 「変化の激しい世の中に対応した安全管理」 IT業界で言えば仮想化,クラウド,コンテナの時に言ったであろう "ビジネスの変化に対応できるアジリティを備える“ 実践は”レジリエンス エンジニアリング” 状況が絶えず変化する環境において「完璧な手順書」は作成できない 出典: 「ヒューマンエラーと新しい安全マネージメント」
NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時)) http://www.nhk.or.jp/kaisetsu-blog/400/256906.html
Safety-IとII Safety-Ⅰ(従来の考え方)との比較 Safety-Ⅰ Safety-Ⅱ 失敗に注目して要因をつぶす 成功に注目して成功を増やす 受動的な安全管理を不具合発覚 時に行う 先行的な対応で継続的に発展さ せる
パフォーマンスの変動は有害な ものでありできる限り防ぐ パフォーマンスの変動は必然で あり有用である。モニタリング して管理活用されるべき 出典: 「ヒューマンエラーと新しい安全マネージメント」 NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))
Safety-II システムと人の位置付け Safety-Ⅰ Safety-Ⅱ 人間の失敗がシステムを危険な 状態にする 人間の柔軟性が危険なシステム を安全に機能させている 事故の80-90%の原因は人間に ある
成功のほとんどにも人間が関与 している 出典: 「ヒューマンエラーと新しい安全マネージメント」 NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))
Safety-II Safety-Ⅱと自動化 Safety-Ⅱ Safety-Ⅰ 置き換えるものではなく Safety-Ⅰでカバーできない 領域をカバーするのが Safety-Ⅱ “人はミスをするから自動化” はSafety-Ⅰのみの視点
出典: 「ヒューマンエラーと新しい安全マネージメント」 NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))
レジリエンスエンジニアリング 実践: レジリエンスエンジニアリング 概念は分かってきたので実装につながるような実践の指針を会得したい 考え方: ・システムは本質的に危険なもの ・人間と組織の柔軟性(レジリエンス)がシステムを安全に機能させている ・失敗事例より成功事例 (日常の業務実態)に注意を向けるべし ・レジリエンスを高める方策が安全確保に重要
出典: 「ヒューマンエラーと新しい安全マネージメント」 NHK視点・論点 2016/11/09放送分 (立教大学 芳賀教授(当時))
レジリエンスエンジニアリング レジリエンスの評価軸 ・対処するポテンシャル ・監視するポテンシャル ・学習するポテンシャル ・予見するポテンシャル 出典: 「Safety-IIの実践」第4章 (海文堂 2019)
レジリエンスエンジニアリング 備えるべき特性 予見 注意 対処 何を予測 すべきか 知ってい る 何を監視
すべきか 知ってい る 何を するべきか 知っている 学習 更新 知識 技量 リソース 時間 出典: 「レジリエンスエンジニアリング」 p342 図E.1 (予見) (注意) (合理的対応) ダイナミックな進展 システム
レジリエンス この特性には見覚えがある
Clustering? 備えるべき特性 ・注意 ・予見 ・対処 クラスタリングソフトウェア ・定期的なヘルスチェック ・エラーにつながる メトリクスの傾向計測 ・切替処理スクリプト
“ レジリエンスエンジニアリングとは クラスタリングソフトウェアの カスタマイズ・チューニングのことである - w4yh
Clustering? ^H^H そんなまさか 「きちんと切り替わらなかった」 「スプリットブレインになった」 みたいなトラウマにまた遭遇しなければならないのか?
どこで間違えたのか “対処” クラスタリングソフトは基本的にActive/Standbyを入れ替えて 元と同じ状況へ復帰する固定的な対応 停止だけでなく劣化などにも対応して成功し続けるためのプロアク ティブな仕組みとは言えない..
どこで間違えたのか “予見” 既知を実装済にする -- リアクティブ(ex. 監視項目の追加) 未知を予見可能にする -- プロアクティブ(ex. 傾向分析)
リソース不足などに起因する劣化の場合、 切り替えるだけでは改善は見込めない..
どこで間違えたのか 「レジリエントなシステム」? “安全はシステムや組織が有しているものではなく、 システムや組織が実現するものである” “レジリエンスエンジニアリング” p339 (cf. 「ほとんどすべての設計というものは、設計しているシステムのあらゆる挙動 について、相対的に無知の状態で行われるものである。」 ”社会技術システムの安全分析”
海文堂 2013 / (“Design Paradigms” Cambridge University Press 1994) )
イマココ 現時点の仮説 監視やメトリクス計測によるシステムへの理解と洞察を深める ことが大事 Observability & Controllability Continuous Observability &
Feedback for Flexible Controllability
新たな疑問 ログ? 最近K8sのログ 管理に活気があ る印象。メトリ クスに加えてロ グもフィードバ ックに必要? 宣言的? 変化し続ける状
況へ対応する上 で”宣言的”な仕 組みの相性は良 いのか? カオス? 次スライドのツ イート
新たな疑問 QConLondon 2020 Day3 (2020/03/04) “Chaos and Resilience: Architecting for
Success”セッション “未知を既知にする” →カオスエンジニアリング! と思ったら牽制されたので これから勉強します...
レジリエンスを 学んでいるが 奥が深すぎる
まとめ “レジリエンスエンジニアリングと それを支える概念であるSafety-II について学んで理解を深めた” “レジリエンスを注意, 予見, 学習, 対処という4つの特性から視ること を学んだ。ちょっと勘違いもした” “瞬間や固定的なものではなく継続
的な学習フィードバックを伴う取り 組みで実現していくものではないか とレジリエンスを捉えるに至った”
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.
参考資料 書籍: • “レジリエンスエンジニアリング 概念と指針” 日科技連 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