Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
障害対応を楽しむ7つのコツ
Search
ryuichi1208
June 29, 2024
Technology
5.4k
9
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
障害対応を楽しむ7つのコツ
ryuichi1208
June 29, 2024
More Decks by ryuichi1208
See All by ryuichi1208
そのasync、止まってない? ”鉄板”イベントループ ブロッキング処理検出術
ryuichi1208
1
2.3k
AIでサービス運用はどう変わるのか
ryuichi1208
0
210
入門 再発防止策
ryuichi1208
17
7.8k
SREの組織構造と実践.
ryuichi1208
0
320
信頼性・システムの観測・障害対応
ryuichi1208
1
4
障害対応からの学びと体制づくり
ryuichi1208
0
1.2k
金曜日デプロイ、するかしないか.pdf
ryuichi1208
1
490
会話で作る信頼性
ryuichi1208
0
200
シグナル(Unix)と仲良くなる
ryuichi1208
1
210
Other Decks in Technology
See All in Technology
AI時代に必要な脅威モデリング― 変化の速度に負けない理解とリスク判断
masakane55
5
1.2k
TinyGoでオブザーバビリティ?OpenTelemetryはTinyGoで使えるのか / Is OpenTelemetry available in TinyGo environment?
ymotongpoo
2
130
FactoryBotアンチパターン / factory_bot anti-patterns
toshimaru
0
140
The seven pitfalls of AI (revised version)
ufried
0
310
SREでアラート疲れを 解決しよう!
kairim0
1
220
Claude Code本は、どのように執筆チームで書かれたか
oikon48
1
350
Snapshot Testing in Practice: Predictable and Reliable SwiftUI Views
fespinoza
0
170
プロダクト価値を、 チームが使える判断軸に変える
vivion
0
140
Execution in the Kingdom of Agents: Reflections on Abstraction and Complexity
bcantrill
0
900
不可逆な意思決定を避けながら10億超の顧客データを AI Ready にするデータ基盤設計
baseballyama
1
250
並行性の問題を防げ!実践トランザクション入門
occhi
0
280
無理せず続ける、子育てエンジニアの学び
codmoninc
PRO
0
550
Featured
See All Featured
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
840
Scaling GitHub
holman
464
140k
A Modern Web Designer's Workflow
chriscoyier
699
190k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
Kristin Tynski - Automating Marketing Tasks With AI
techseoconnect
PRO
0
540
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
28
3.7k
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
2
6.3k
Odyssey Design
rkendrick25
PRO
2
860
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.5k
How STYLIGHT went responsive
nonsquared
100
6.3k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
260
Transcript
1 障害対応を楽しむ7つのコツ 渡部 ⿓⼀ Road to SRE NEXT@仙台
技術部プラットフォームグループ 2021年 中途入社 2 自己紹介 渡部 龍一 Watanabe Ryuichi •
ロール: SRE • 仙台出身、六丁の目あたりに住んでます • SNS: @ryuichi_1208 • 好きなこと: 障害対応、EOL対応 • 好きな仙台っ子ラーメン: 味濃いめ、油なし、麺普通
3 障害対応楽しめていますか?
4 対象 • 障害対応をあまりやったことない方 • 障害対応に不安がある方 • 障害対応があまり好きじゃない方
5 障害対応とは?
6 • 運⽤中のシステムに継続できない障害が発⽣した際に、復旧させるための作業 • Webシステムにおける障害対応は、システムの信頼性を維持し、ビジネスの 継続性を確保するために不可⽋な活動 障害対応とは
7 • ビジネス継続性の確保 • ビジネスの競争優位性の確保 • 顧客満⾜度の維持 • ブランドイメージの保護 •
法的‧規制要件の遵守 障害対応は何故必要なのか?
8 ビジネスにおいて障害対応は重要!
9 障害発⽣を0にするために頑張ろう!
10 • 全く⼿を⼊れないサービスでCDNとかで静的なコンテンツだけを返すみたいな Webサービスなら可能かもしれない? • とはいえそんなサービスで利益を得続けるのは現実的ではない • サービスをローンチしても競合他社がすぐに現れてくる時代 • サービスも進化させなければ留まることすらできずに緩やかに後退する
• 継続して新機能の開発は必要だしよりよいプロダクトを作り続ける必要が出てく る 障害0は可能なのか?
11 • 動いているものに⼿を加える必要が出てくる • 開発環境やステージング環境でプロダクション環境と同等のテスト、シミュレー ションができれば障害は起きないかもしれない? • 実ユーザーやインフラの規模など完璧にシミューレートするのは困難 ◦ スロークライアント
◦ 今はサポートしてないようなクライアント、プロトコル ◦ 想定してないリクエストが数倍やってくる 障害0は可能なのか?
12 障害発⽣を0にするのは難しそう
13 • ビジネス継続性の確保 • ビジネスの競争優位性の確保 • 顧客満⾜度の維持 • ブランドイメージの保護 •
法的‧規制要件の遵守 障害対応は何故必要なのか?(再掲)
14 障害対応が必要な場⾯はプレッシャーが... 怖い、緊張する、やりたくない
15 障害対応を楽しむための7つのコツ
16 1. ドキュメントの整備をしておく 2. 障害発⽣時を⾒越してツールを整備しておく 3. 特定技術における得意分野を作っておく 4. プロダクションでやりたいことを考えておく 5.
ゲーム感覚で楽しんでみる 6. インシデントコマンダーになってみる 7. 絶賛募集中! 7つのコツ
17 • 障害対応は本番環境で操作をしがち • 全くわからない操作をやるのは怖い • 対応⽅法のドキュメントなどが整備されていれば怖さは緩和される(はず) 1. ドキュメントの整備をしておく
18 • ツールを整備したり⾃作したりして障害発⽣に備える • 作った以上は使いたくなる ◦ オブザーバビリティの実装 ◦ bpftraceとかのワンライナーを整備 ◦
AIに⾷わせるようのシステムメトリクスを出⼒するCLIを⾃作したり 2. 障害発⽣時を⾒越してツールを整備しておく
19 • ミドルウェア、フレームワークでここはまかせろ!的なのを作っておく • 実業務ではあまり使わないような知識が役だったりする ◦ コード読む、issue追う、バグトラッキングシステムみる、 コントリビュートする 3. 特定技術における得意分野を作っておく
20 • 負荷が⾼いけど実環境でやってみたいことを上げておく • perfコマンドでカーネルのどこでボトルネックになってるか知りたい • MySQLのバッファープールの中⾝⾒たい • 独⾃パッチを当てたNginxをプロダクションで試してみたい •
試してみたかったミドルウェアのパラメータを列挙しておいたり 4. プロダクションでやりたいことを考えておく
21 • 状況整理&持っている知識の引き出しを開けていく作業 • 脱出ゲームをやってる時と似たような状況(ストレスフルではあるが...) • モチベーションを⾼め、楽しみながらスキルを向上させる ◦ ゲーミフィケーション ◦
復旧最優先の中で取り組むのは難しいので過去のポストモーテムドキュメントなどか ら擬似的に障害対応を再現させつつ取り組んでみるのが個⼈的にはおすすめ 5. ゲーム感覚で取り組む
22 • インシデントを解決に導く指揮官 • 全体を俯瞰してみる⽴場は楽しい、⾃分が意思決定して進んでいくのも楽しい • 最初から実際の障害でやるよりかはTable Top Exerciseのように演習で場数を踏 んでみるのもおすすめ
◦ AWS フォールトインジェクションサービスで擬似障害をやってみる ▪ IOストレステスト ▪ パケット損失 6. インシデントコマンダーになってみる
23 まとめ
24 • ビジネスにおいて重要な障害対応、プレッシャーがある中で⾃⾝の100%の能⼒ を発揮し切るのは難しい • 今回の発表のように発⽣することを前提として楽しむための⼼構えを持っておく ことでより良い対応ができるようになるはず • 「怖い、緊張する、やりたくない」というマイナスイメージの緩和策に繋がれば 良いなと思っています
まとめ
25 • 障害対応”中”にフォーカスした内容であって障害対応後のポストモーテム、 再発防⽌策の実施が重要だとそこの発表をYAPCでしたのでぜひVoteお願いしま す!!! まとめ
26 ご静聴ありがとうございました