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
7
4.5k
障害対応を楽しむ7つのコツ
ryuichi1208
June 29, 2024
Tweet
Share
More Decks by ryuichi1208
See All by ryuichi1208
AI前提のサービス運用ってなんだろう?
ryuichi1208
1
170
効果的なオンコール対応と障害対応
ryuichi1208
6
3.1k
コロナ禍とその後:地方エンジニアが学んだキャリア戦略の変遷
ryuichi1208
3
260
入門オンコール対応
ryuichi1208
7
3.3k
MySQLのOOMと戦った話
ryuichi1208
4
2.7k
超入門 SRE
ryuichi1208
8
3.6k
SLO Docsのすゝめ
ryuichi1208
7
2.9k
SMTPでのOpenTelemetryの可能性を考えてみる
ryuichi1208
7
2.7k
実録_マルチテナント環境でのGmailガイドライン対応
ryuichi1208
9
2.1k
Other Decks in Technology
See All in Technology
Analytics-Backed App Widget Development - Served with Jetpack Glance
miyabigouji
0
600
The XZ Backdoor Story
fr0gger
0
3.6k
自作Cコンパイラ 8時間の奮闘
soukouki
0
840
Privacy Sandbox on Android / DroidKaigi 2024
7pairs
1
260
ネットワークだけ隔離されたコンテナ作成デモ / Kichijoji.pm36
tenforward
1
230
アプリをリリースできる状態に保ったまま 段階的にリファクタリングするための 戦略と戦術 / Strategies and tactics for incremental refactoring
yanzm
6
1.4k
eBPFのこれまでとこれから
yutarohayakawa
10
3.2k
「自動テストのプラクティスを効果的に学ぶためのカードゲーム」 ( #sqip2024 )
teyamagu
PRO
2
180
サーバレスでモバイルアプリ開発! NTTコム「ビジネスdアプリ」のアーキテクチャ / The architecture of business d app
nttcom
12
240
あなたの知らないiOS開発の世界
recruitengineers
PRO
3
170
GC24 Recap: Interface Internals
task4233
0
110
20240911_New_Relicダッシュボード活用例
speakerdeckfk
0
110
Featured
See All Featured
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
26
1.9k
Rebuilding a faster, lazier Slack
samanthasiow
78
8.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
8.9k
How to Think Like a Performance Engineer
csswizardry
16
960
Music & Morning Musume
bryan
46
6k
Building a Modern Day E-commerce SEO Strategy
aleyda
36
6.8k
Build The Right Thing And Hit Your Dates
maggiecrowley
30
2.3k
How to name files
jennybc
75
98k
Build your cross-platform service in a week with App Engine
jlugia
228
18k
4 Signs Your Business is Dying
shpigford
179
21k
The Illustrated Children's Guide to Kubernetes
chrisshort
47
48k
The Power of CSS Pseudo Elements
geoffreycrofte
71
5.3k
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 ご静聴ありがとうございました