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
障害対応を楽しむ7つのコツ
Search
ryuichi1208
June 29, 2024
Technology
9
5.1k
障害対応を楽しむ7つのコツ
ryuichi1208
June 29, 2024
Tweet
Share
More Decks by ryuichi1208
See All by ryuichi1208
AI前提のサービス運用について再考する
ryuichi1208
6
1.3k
A Shallow Dive into the World of TCP
ryuichi1208
1
580
入門リトライ
ryuichi1208
19
7.3k
超入門SRE 2025
ryuichi1208
4
1.4k
Goで作って学ぶWebSocket
ryuichi1208
5
3.7k
コード化されていない稼働中のサーバを移設_再構築する技術
ryuichi1208
20
13k
AI前提のサービス運用ってなんだろう?
ryuichi1208
9
1.9k
入門 バックアップ
ryuichi1208
22
10k
効果的なオンコール対応と障害対応
ryuichi1208
9
3.9k
Other Decks in Technology
See All in Technology
mruby(PicoRuby)で ファミコン音楽を奏でる
kishima
1
280
制約理論(ToC)入門
recruitengineers
PRO
3
420
アジャイルテストで高品質のスプリントレビューを
takesection
0
120
Figma + Storybook + PlaywrightのMCPを使ったフロントエンド開発
yug1224
9
2.8k
Android Studio の 新しいAI機能を試してみよう / Try out the new AI features in Android Studio
yanzm
0
280
人と組織に偏重したEMへのアンチテーゼ──なぜ、EMに設計力が必要なのか/An antithesis to the overemphasis of people and organizations in EM
dskst
6
630
R-SCoRe: Revisiting Scene Coordinate Regression for Robust Large-Scale Visual Localization
takmin
0
430
AIエージェントの開発に必須な「コンテキスト・エンジニアリング」とは何か──プロンプト・エンジニアリングとの違いを手がかりに考える
masayamoriofficial
0
410
小さなチーム 大きな仕事 - 個人開発でAIをフル活用する
himaratsu
0
130
モダンフロントエンド 開発研修
recruitengineers
PRO
3
570
AIエージェント就活入門 - MCPが履歴書になる未来
eltociear
0
550
[CV勉強会@関東 CVPR2025 読み会] MegaSaM: Accurate, Fast, and Robust Structure and Motion from Casual Dynamic Videos (Li+, CVPR2025)
abemii
0
200
Featured
See All Featured
Designing Dashboards & Data Visualisations in Web Apps
destraynor
231
53k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.5k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
53
2.9k
A designer walks into a library…
pauljervisheath
207
24k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
34
6k
Practical Orchestrator
shlominoach
190
11k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
10
1k
Faster Mobile Websites
deanohume
309
31k
Facilitating Awesome Meetings
lara
55
6.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
6k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
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 ご静聴ありがとうございました