ストーリー
ミッション概要
| 項目 | 内容 |
|---|---|
| 演習タイトル | ポストモーテムプロセスの設計 |
| 想定時間 | 90分 |
| 成果物 | ポストモーテムプロセス設計書 + サンプルポストモーテム |
Mission 1: ポストモーテムプロセスの設計
要件
組織全体に適用するポストモーテムプロセスを設計してください。
- トリガー条件: どのような場合にポストモーテムを実施するか
- プロセスフロー: インシデント発生→ポストモーテム完了までの全フロー
- テンプレート: 組織固有のポストモーテムテンプレート
- レビュー体制: 誰がレビューし、誰が承認するか
- 共有と保管: どこに保管し、どう共有するか
解答例
トリガー条件
| 条件 | 自動/手動 | 説明 |
|---|---|---|
| SEV1またはSEV2インシデント | 自動 | 重大インシデントは必ず実施 |
| エラーバジェット10%以上消費 | 自動 | バジェットへの影響が大きい場合 |
| MTTR 1時間超過 | 自動 | 復旧に長時間かかった場合 |
| ユーザーからの報告 | 手動 | 外部から指摘された場合 |
| データ損失・破損 | 自動 | データ関連は必ず実施 |
| ニアミス | 手動 | SREリードの判断で実施 |
プロセスフロー
Day 0: インシデント発生
└── ICがインシデントチャンネルでタイムラインを記録
Day 0-1: インシデント解決
└── Scribeがタイムラインを整理
Day 1-3: ポストモーテムドラフト作成
└── ICまたは指名されたメンバーがドラフトを作成
└── 関係者にレビュー依頼
Day 3-5: ポストモーテムレビュー会議
└── 50分の会議でドラフトをレビュー
└── アクションアイテムの担当・期限を決定
Day 5-7: ポストモーテム確定・共有
└── SREリードが承認
└── 全エンジニアに共有
└── アクションアイテムを課題管理ツールに登録
Day 7以降: アクションアイテム追跡
└── 週次レビューで進捗確認
保管と共有
| 項目 | 設計 |
|---|---|
| 保管場所 | Confluenceの「ポストモーテム」スペース |
| 命名規則 | PM-YYYYMMDD-[サービス名]-[概要] |
| アクセス権 | 全エンジニアが閲覧可能 |
| 検索性 | タグ付け(サービス、根本原因カテゴリ、SEV) |
| 共有 | 月次のポストモーテム共有会で主要なものを発表 |
Mission 2: サンプルポストモーテムの作成
シナリオ
以下のインシデントシナリオに対して、ポストモーテムを作成してください。
インシデント概要:
日時: 2025年11月15日(金)17:30-18:45
サービス: ECサイト
影響: 全ユーザーが決済不能(75分間)
原因: 決済マイクロサービスのデプロイ(v3.2.0)でDB接続設定が
本番環境のものではなくステージング環境のものに上書きされた
タイムライン:
- 17:15 v3.2.0をデプロイ(変更内容: 決済手数料計算ロジックの修正)
- 17:30 決済エラー率が急増(アラート発報)
- 17:35 Primary on-call(鈴木)が応答
- 17:45 デプロイが原因と推定、ロールバック開始
- 17:50 ロールバック失敗(DB接続設定のロールバック手順がなかった)
- 18:00 SREリードにエスカレーション
- 18:15 手動でDB接続設定を本番用に修正
- 18:30 決済機能の復旧確認
- 18:45 モニタリング強化を確認し、インシデントクローズ
影響:
- 決済不能: 75分間
- 影響ユーザー: 推定3,000人
- 売上損失: 推定500万円
- エラーバジェット消費: 月間バジェットの25%
解答例
ポストモーテム: ECサイト決済障害
基本情報
- 日時: 2025-11-15 17 - 18 (JST)
- 影響時間: 75分
- 影響範囲: ECサイト全ユーザーの決済機能
- 重大度: SEV1
- IC: SREリード(18)/ 鈴木(初動)
- ポストモーテム作成者: 鈴木
サマリー
決済マイクロサービスv3.2.0のデプロイ時に、環境固有のDB接続設定が誤ってステージング環境の値に上書きされ、全ユーザーが75分間決済不能となった。ロールバック手順にDB接続設定の復元が含まれておらず、復旧が遅延した。
影響
- ユーザー影響: 推定3,000人が決済不能
- ビジネス影響: 推定500万円の売上損失
- エラーバジェット消費: 月間バジェットの25%(Orange状態に移行)
タイムライン
| 時刻 | イベント |
|---|---|
| 17 | v3.2.0デプロイ実行 |
| 17 | 決済エラー率急増、P1アラート発報 |
| 17 | Primary on-call(鈴木)応答。エラーログを確認 |
| 17 | DB接続エラーを確認。直前デプロイとの関連を疑う |
| 17 | ロールバック決定、実行開始 |
| 17 | アプリケーションのロールバック完了。しかし決済エラー継続 |
| 17 | DB接続設定がステージング環境のものであることを発見 |
| 18 | SREリードにエスカレーション。IC交代 |
| 18 | 手動でDB接続設定を本番用に修正 |
| 18 | 決済機能の復旧を確認。エラー率正常化 |
| 18 | 30分間の安定稼働を確認。インシデントクローズ |
根本原因
直接原因: デプロイパイプラインが環境固有の設定(DB接続文字列)をアプリケーションコードと一緒に上書きした。
根本原因(5 Whys):
- なぜDB設定が上書きされたか → 環境設定がアプリケーションコードと同じリポジトリに含まれていた
- なぜ同じリポジトリに含まれていたか → 初期構築時に分離されておらず、技術負債として残っていた
- なぜデプロイ前に検知できなかったか → デプロイパイプラインに環境設定の差分チェックがなかった
- なぜロールバックで復旧できなかったか → ロールバック手順にDB接続設定の復元ステップがなかった
- なぜ手順が不完全だったか → ランブックが環境設定を考慮して作成されていなかった
対応の評価
うまくいったこと:
- アラートが5分以内に発報された
- Primary on-callが5分以内に応答した
- 原因の推定が比較的速かった(10分)
うまくいかなかったこと:
- ロールバック手順にDB設定の復元が含まれていなかった(+25分の遅延)
- 環境設定の問題を切り分けるのに時間がかかった
幸運だったこと:
- 金曜夕方だったため、ピークタイムよりユーザー数が少なかった
- データの損失・破損は発生しなかった
アクションアイテム
| # | アクション | 種別 | 担当 | 期限 | 優先度 |
|---|---|---|---|---|---|
| 1 | 環境設定をアプリケーションコードから分離(外部化) | 防止 | バックエンドA | 12/15 | P1 |
| 2 | デプロイパイプラインに環境設定差分チェックを追加 | 検知 | SREエンジニア | 12/1 | P1 |
| 3 | ロールバックランブックに環境設定の復元手順を追加 | 緩和 | SREリード | 11/22 | P1 |
| 4 | カナリアリリースの導入(決済サービス) | 緩和 | SREエンジニア | 1/31 | P2 |
| 5 | 決済サービスのデプロイ後自動スモークテスト追加 | 検知 | バックエンドA | 12/31 | P2 |
学びと教訓
環境設定とアプリケーションコードの分離は基本的なベストプラクティスだが、初期構築時の技術負債が残っていた。「動いているから大丈夫」という判断が、いずれ大きなインシデントにつながる教訓。ロールバック手順も「アプリケーションのロールバック」だけでなく「環境全体の状態のロールバック」として設計する必要がある。
Mission 3: インシデントメトリクスダッシュボード設計
要件
経営層向けとSREチーム向けの2種類のダッシュボードを設計してください。
- エグゼクティブダッシュボード: 月次で経営会議に提示するもの
- SREオペレーションダッシュボード: 日常的にSREチームが使用するもの
- ROIレポート: 半期の投資対効果を示すもの
解答例
エグゼクティブダッシュボード
| セクション | 表示内容 | 形式 |
|---|---|---|
| サマリー | 月間インシデント数、MTTR、SLO達成率 | スコアカード(前月比較) |
| トレンド | 12ヶ月のインシデント数推移 | 折れ線グラフ |
| エラーバジェット | サービス別バジェット消費率 | ゲージ(赤黄緑) |
| ビジネスインパクト | インシデントによる推定損失額 | 棒グラフ |
| アクション進捗 | P1アクションアイテムの完了率 | プログレスバー |
SREオペレーションダッシュボード
| セクション | 表示内容 | 形式 |
|---|---|---|
| MTTR分解 | MTTD/MTTA/MTTI/MTTF | スタックバー |
| アラート品質 | アクション率、ノイズ率 | ゲージ |
| オンコール負荷 | 人別の対応件数・時間 | ヒートマップ |
| 根本原因分布 | カテゴリ別の件数 | パイチャート |
| ポストモーテム | 作成率、アクション完了率 | スコアカード |
ROIレポート(半期)
| 項目 | 導入前(6ヶ月) | 導入後(6ヶ月) | 改善率 |
|---|---|---|---|
| インシデント数 | 12件 | 6件 | 50%削減 |
| MTTR | 4.2時間 | 1.0時間 | 76%改善 |
| 推定損失額 | 3,000万円 | 750万円 | 75%削減 |
| 投資額 | - | 1,000万円 | - |
| 純効果 | - | 1,250万円 | ROI 125% |
達成度チェック
| 観点 | 達成基準 |
|---|---|
| プロセス設計 | トリガー条件からアクション追跡までの全フローが定義されている |
| ポストモーテム品質 | ブレームレスで、5 Whysによる根本原因分析がされている |
| アクションアイテム | 防止・検知・緩和の3分類で具体的に定義されている |
| ダッシュボード | 対象者別に適切な粒度の情報が設計されている |
| ROI | 定量的な効果測定方法が定義されている |
推定所要時間: 90分