Upgrade to Pro — share decks privately, control downloads, hide ads and more …

インシデント対応の成熟度とベストプラクティス

Ryo Yoshii
September 04, 2023

 インシデント対応の成熟度とベストプラクティス

2023年9月4日開催 OpsJAWS Meetup#25 で登壇いただいたPagerDuty株式会社 Solutions Consultant 山田 索 様の資料です。
リアルタイム運用の成熟度向上、継続的改善を支援します。

Ryo Yoshii

September 04, 2023
Tweet

More Decks by Ryo Yoshii

Other Decks in Technology

Transcript

  1. Agenda 1. PagerDuty概要 2. インシデント対応の成熟度 3. Ops Guide - インシデント対応のベストプラクティス

    4. AI/自動化の活用例 5. Q&A Motomu Yamada PagerDuty株式会社 Manager, Solutions Engineering X: @ymotomu_pd インシデント対応の成熟度と ベストプラクティス
  2. 4 Company 創業: 2009年 (2019年NYSE上場) 創業者: 元Amazonのエンジニア3名 従業員数: 1000+ 本社:

    ⽶国サンフランシスコ市 拠点: 6ヶ国 8拠点 Product ⾼い信頼性を誇る エンタープライズクラウドサービス 700+の外部サービスを統合する ⼀元管理システムを提供 機械学習と⾃動化により ⽣産性を向上 Customers 2万社以上の実績 100万以上のユーザー 6億以上のインシデント対応 Fortune100の65%が採⽤ PagerDuty インシデント対応ソリューション インシデントをより早く‧少ないリソースで解決 / 将来のインシデントを未然に防ぐ
  3. PagerDutyインシデント対応ソリューション 導⼊効果 700以上の インテグレーション PagerDutyの優位点 ユーザー100万⼈の信頼 10年におよぶ MLデータの蓄積と ラーニング実績 ⾃動化

    795% 3年間のROI 74% 予期せぬダウンタイム の削減率 85% 問題特定時間の 削減率 ご利⽤企業数 『Fortune 100』の 企業における PagerDutyの利⽤⽐率1 インシデント管理、 ITアラート、 IT⾃動化、AIOpの分野で G2リーダーに選出 出典:IDC Business Value Research, sponsored by PagerDuty, 『PagerDuty Helps Organizations Optimize Their Digital Operations Management to Create Better Value』 2021年1⽉ 顧客価値の追求 20,000 12020年12⽉3⽇現在 65% Leader 77% 問題解決までの時間 削減率 2ヶ⽉ 投資回収期間
  4. リアルタイム運⽤の成熟レベル 顧客からの問い合わせが 障害検知⼿段になってい る 障害/問題管理のプロセ スが未定義 ノウハウや経験がチーム 間で共有されていない リアクティブ( 受動的)

    ⾃動化された障害検知 適切な問題解決担当者を 直ちに招集できる体制‧ プロセス アドホックでの情報共有 レスポンシブ( 即応的) 適切でタイムリーな情 報が提供可能 ⾃動化され、チーム間 同期の取れたレスポン スとアクション 定型化/⾃動化した振り 返りプロセス プロアクティブ (能動的) 機械学習での洞察に基 づく予測的な復旧、障 害予防 ⼀貫性が取れ、組織全 体に浸透したベスト‧ プラクティス ⾼度に⾃動化され、無 駄を排除したプロセス 継続的学習、改善、及 び予防 プリベンティブ (予防的) 6 サービスの可⽤性‧信頼性 エンジニアの⽣産性
  5. Ops Guides - https://www.pagerduty.com/ops-guides/ 2023年現在 12のガイドを公開 • Incident Response •

    Full Service Ownership • Auto Remediation • Best Practices for On Call Teams • Postmortems • Retrospectives • Operational Reviews • DevSecOps • Security Training • Internal Stakeholder Communications • Customer Service Operations • Business Incident Response GitHub - https://github.com/PagerDuty 8
  6. Ops Guides/Incident Response - https://response.pagerduty.com/ • インシデント対応プロセスに関する、 PagerDuty内部⽂書の縮⼩版 • PagerDutyを利⽤していなくても活⽤可

    (インシデント対応の準備‧発⽣時‧発⽣後に それぞれ何をすべきか、⼀般化して記載) • 以下の⽅を読者として想定対象 ◦ オンコールの実務担当者 ◦ 現在運⽤中のインシデント対応プロセスに携わる⽅ ◦ 今後、正式なインシデント対応プロセスを制定したい⽅ • 動画のトレーニングコースや、アンチパターンも公開 Training Course - https://response.pagerduty.com/training/courses/incident_response/ Anti-Patterns - https://response.pagerduty.com/resources/anti_patterns/ GitHub - https://github.com/PagerDuty/incident-response-docs 9
  7. はじめに: これからプロセスを作成する⽅向け 11 1. 「インシデント」と「重⼤インシデント」を定義する a. 最初は重⼤度レベルは気にしなくてよい 2. 対応者を動員する⽅法を決める a.

    ⼿動でトリガーする⽅法を⽤意 b. インシデント専⽤のWeb会議とチャットルームを準備しておく 3. インシデント対応の役割を定義 a. まずはインシデントコマンダー、次に記録係 4. ポストモーテムテンプレートの作成 5. 練習&運⽤開始
  8. 1. 検知 2. トリアージ 3. 動員 4. 協⼒/解決 5. 学習/予防

    ライフサイクル全体を通して、インシデントの状況をリアルタイムで可視化 インシデントを特定 ⾃動処理 運⽤改善のための 知⾒を提供 最適な担当者に通知 迅速な解決を⽀援 あらゆるツールから イベントを受信 架電、 SMS、メール Appプッシュ通知、チャット ⾃動エスカレーション スケジュール管理 診断‧修復作業の⾃動化 チーム内外と円滑に連携 クラウド コンテナ マイクロサービス ネットワーク アプリ‧サービス セキュリティ データベース サーバー ソーシャル PagerDuty Operations Cloud インシデントをより早く‧少ないリソースで解決 / 将来のインシデントを未然に防ぐ 担当者が最適な 通知⽅法を選択 対応履歴 MTTA/MTTR 分析 担当者の負荷状況 ポストモーテム 解決のヒントを提⽰ • 過去の類似インシデント • 直近の構成/コード変更 ...etc. 80%-99% ノイズ削減 700+ Integrations
  9. ノイズ削減1: アラートを⾃動でグルーピングし、不要な通知を削減する Alert Grouping 複数のアラートをグループ化し、1つのイン シデント配下に集約。不要な通知を削減し 、担当者がより重要なインシデント対応に 集中できるよう⽀援する。 仕分け⽅法は、以下3つから選択可能 1.

    Intelligent (推奨): アラートの中⾝と時間を元に、AIが ⾃動仕分け 2. Content-Based: 管理者が仕訳ルールを⼿動で作成 3. Time-Based: 指定した時間内に受信したアラート を1つのインシデントに集約 1
  10. 17 このエラーは初めてだな。 過去に同じような問題があったか、 調べてみよう。 エラーの情報はたくさん出てくるけ ど、今回の事象とは関係なさそうだ な... 最近うちのサービスでどんな変更が あったのか、調べてみよう。 AnsibleとGithubにログインして...

    たくさんのインシデントがほぼ同時 に発生している。 どれから手を付けるべきだろうか。 。 この事象はうちのサービスが原因な のかな。他サービスの障害に起因し ているのでは? 他サービスは正常に動いているのか な。 AIによる支援機能: 解決のヒントの提示 担当者に十分な情報がな いと、調査・解決に時間 がかかってしまう。
  11. 18 このエラーは初めてだな。 過去に同じような問題があったか、 調べてみよう。 エラーの情報はたくさん出てくるけ ど、今回の事象とは関係なさそうだ な... 最近うちのサービスでどんな変更が あったのか、調べてみよう。 AnsibleとGithubにログインして...

    この事象はうちのサービスが原因な のかな。他サービスの障害に起因し ているのでは? 他サービスは正常に動いているのか な。 AIによる支援機能: 解決のヒントの提示 たくさんのインシデントがほぼ同時 に発生している。 どれから手を付けるべきだろうか。 。 担当者に十分な情報がな いと、調査・解決に時間 がかかってしまう。 過去の類似インシデントの対応履歴 直近の構成・コード変更履歴 他サービスで発生中のインシデント情報 大元の原因と思われる インシデントを提示 担当者が調べたり問い合わせ を行わなくても、 次のActionを取るために必要 な情報が揃っている
  12. Trigger Incident Workflow Priority: P1 IF “イベントペイロード に billing_service を含

    む” THEN “PriorityをP1に 変更” AND “⾃動診断Jobを実⾏” Event Orchestration Automation Actions Incident Workflows Slack Channel作成, 関係者への状況連絡, 追加のResponder招集, ...etc. Incident Workflowからの Automatin Actions/Webhook実 ⾏は今後サポート予定(2023年) インシデント 起票‧通知 Runbook Automation (SaaS) Process Automation (On-Prem) PagerDuty インシデント対応⾃動化機能 全体像 Webhook Gen AI: - Status Update/Postmortem⾃動作成 - ⾃動ジョブの作成⽀援 ⾃動診断Job ⾃動復旧Job
  13. Event Orchestration (Service Rules) アラートに対する条件を複数組み合わせて 指定し、その条件を満たす場合に、指定し たActionを⾃動実⾏する機能。 Action として Suppress

    や Suspend (指定 した時間、インシデント化を抑⽌) や、⾃動 化の機能(Automation Actions/Webhook) を実⾏させることが可能。 例: IF “イベントペイロードに billing_service を含む” THEN “PriorityをP1に変更” AND “⾃動診断Jobを実⾏” 2 トリアージの⾃動化: アラートの条件を指定して、任意のActionを実⾏
  14. 2 1. Jobを整備: SME • スクリプト • API • コマンド実⾏

    クラウド、オンプレ、VM、 コンテナ、サーバレス サポート 契約社員 AIOps SRE Dev 2. Jobの実⾏指⽰ (PagerDutyまたは API経由) 3. Jobを実⾏ 21 PagerDuty Process Automation (旧称Rundeck) Process Automation (On-Prem版) または Runbook Automation (SaaS版) では、複数の ステップや各ステップの実⾏結果によって後続 の処理を分岐させるような複雑なワークフロー のJobの作成‧実⾏が可能。 PagerDutyの他、AWSやAnsible, Terraform, ServiceNow 等とのインテグレーションが⽤意 されており、簡単にワークフローを構築できる 。 PagerDutyからJobを呼び出す場合は、 Automation Actionsを利⽤する。 4. 実⾏結果を通知 診断・修復作業の自動化
  15. インシデント対応における課題と解決策 26 運⽤上の課題 ビジネスへの影響 インシデント対応を効率化‧継続的に改善するための仕組みが必要 PagerDuty Operations Platform AIOps ⾃動化

    コラボ レーション 可視化 専⾨知識不要で すぐに活⽤できる AI⽀援機能 現場の担当者⾃⾝ で業務を効率化 迅速な部⾨間連携 を⽀援 影響範囲‧状況の 可視化、改善のた めのデータ提供 プロセス‧体制 Ops Guides • ⼤量のアラート • 初動の遅れ • 重⼤インシデントの ⾒落とし • 運⽤負荷の増⼤ • 組織のサイロ化 • 解決までに時間がか かる • 同様の問題が繰り返 し発⽣ • サービス停⽌ • 受発注業務の停⽌ • 機会損失 • コスト増 • 従業員の離職 • 製品開発の遅れ • 顧客満⾜度低下 • ブランド価値の毀損 インシデント対応 プロセスのベスト プラクティス
  16. PagerDuty Resources PagerDuty 設定ガイド(⽇本語) https://qiita.com/ymotomu/items/e6d13e5284a62e3a1100 PagerDuty 株式会社公式HP (無料トライアル申込み/導⼊事例/価格) https://www.pagerduty.co.jp/ PagerDuty

    公式ユーザードキュメント: https://support.pagerduty.com/lang-ja/docs Integration Guide (モニタリングツール‧コラボレーションツール等との連携⽅法) https://www.pagerduty.com/integrations/ インシデント対応プロセスのベストプラクティス (英語) https://www.pagerduty.com/ops-guides/ https://response.pagerduty.com/ (有志のユーザー様による⽇本語翻訳版) 27
  17. 1. 検知 2. トリアージ 3. 動員 4. 協⼒/解決 5. 学習/予防

    ライフサイクル全体を通して、インシデントの状況をリアルタイムで可視化 インシデントを特定 ⾃動処理 運⽤改善のための 知⾒を提供 最適な担当者に通知 迅速な解決を⽀援 あらゆるツールから イベントを受信 架電、 SMS、メール Appプッシュ通知、チャット ⾃動エスカレーション スケジュール管理 診断‧修復作業の⾃動化 チーム内外と円滑に連携 クラウド コンテナ マイクロサービス ネットワーク アプリ‧サービス セキュリティ データベース サーバー ソーシャル PagerDuty Operations Cloud インシデントをより早く‧少ないリソースで解決 / 将来のインシデントを未然に防ぐ 担当者が最適な 通知⽅法を選択 対応履歴 MTTA/MTTR 分析 担当者の負荷状況 ポストモーテム 解決のヒントを提⽰ • 過去の類似インシデント • 直近の構成/コード変更 ...etc. 80%-99% ノイズ削減 700+ Integrations
  18. Lifecycle of an Incident with PagerDuty AIOps Human Response ノイズ削減

    - Alert Grouping - Auto Pause - 重複排除 コンテクストの提⽰ - Past Incidents - Recent Changes - Probable Origin RESOLVED! ルールによる ⾃動処理 - Event Routing - Event Enrichment - Automation Machine Response 運⽤チーム マネージャー CEO/CIO/CTO カスタマーサービス インシデントの影響範囲‧進捗状況をリアルタイムで可視化 運⽤改善 コラボレーション⽀援 - ⾃動診断 - ⾃動復旧 あらゆるツールから イベントを受信 - 700+ インテグレー ション - Email
  19. 検知 30分 他社通知 ソリューション 導入後 動員 60分 診断 60分 復旧

    120分 学習/予防 数日 導入前 MTTR(平均修復時間)を短縮 リソースを “未来を創る仕事”に投資 インシデント対応 • ⾮効率な⼈による作業 • 関係者からの問い合わ せへの対応 未来を創る仕事 • システムのさらなる安定化 • 新機能の開発 • ⼈材育成 インシデント対応の⾃動化‧可視化により、⽣産性を向上
  20. Proprietary & Confidential AWS Cloud PagerDuty PagerDuty on AWS 構成例

    AWS Systems Manager Incident Manager Amazon CloudWatch Amazon EventBridge AWS Lambda Event Management Human Mobilization Automation 1 3 検知 トリアージ 2 動員 4 解決 Alarm Events Event-Driven Manual ⾃動診断ジョブ ⾃動修復ジョブ
  21. 監視センター 事例: PD導入前の構成・課題 34 ⼤量のアラート • 様々な監視ツールから⼤量のア ラートが送られる • 監視ツール毎にバラバラのダッ

    シュボード • 監視員が⽬視でアラートを精査 するため、時間を要したり、重 要なアラートを⾒逃すケースも 解決に時間を要する • インシデントの対応着⼿までに時間 がかかる • ⼿順書の不備‧対応ミス • 状況を共有する仕組みがなく、部⾨ 間連携が⾮効率 開発に注⼒できない • インシデント対応で度々業務が中断 • アラート設定/⼿順書変更等の調整 に時間が取られる • 本来業務である開発に⼗分な時間が 割けない 電話通知 電話通知 ⼿順書 製品チ ーム 開発協 力会社 ビジネ ス チーム 製品チームに問い合わせな いと、状況が分からない ??? 変更には製品チーム‧開発協⼒会社 ‧監視センターで調整が必要 監視 ツー ル ⼤量の アラート
  22. 製品チ ーム 開発協 力会社 ビジネ ス チーム 事例: PD導入後の構成・効果 35

    アラート数を約1/10に削減 • 全てのアラートをPagerDutyで⼀ 元管理 • AIで関連するアラートを⾃動集約 • 通知の要否‧通知先‧通知レベ ルを制御するルールを作成 迅速にインシデントを解決 • 通知の⾃動化により、迅速に担当者 をアサインし、対応に着⼿ • 状況をリアルタイムで可視化し、 関連部署ともスムーズに連携 MTTA(平均確認時間): 数時間 → 3分 MTTR(平均修復時間): 24時間 → 2時間 開発にリソースを集中 • インシデントの数が減り、対応に要 する時間も減少 • PagerDutyのルールを製品チームで 直接管理‧修正 インシデント対応に割いていた時間を 40時間/⽉削減 ノイズ削減 ルールによる ⾃動処理 担当者毎に最適な ⼿段で⾃動通知 電話/SMS/アプリ Email/Chat 協⼒要請 情報共有 通知 影響範囲‧進捗状況をリアルタイムで可視化 監視 ツー ル
  23. Monitoring & Observability DevOps & Lifecycle DataOps Security ChatOps &

    Collaboration Business Ops & IoT Customer Service ITOps & ITSM 700+ integrations MTTR 25%削減 インシデントを 87%削減 顧客満⾜度向上 36 あらゆるものをつなぐ PagerDuty Operations Cloud モニタリングツールから、コレボレーション‧チケット管理ツール等、700以上の外部サービスと連携可能
  24. リアルタイム運⽤の成熟レベル 顧客からの問い合わせが 障害検知⼿段になってい る 障害/問題管理のプロセ スが未定義 ノウハウや経験がチーム 間で共有されていない リアクティブ( 受動的)

    ⾃動化された障害検知 適切な問題解決担当者を 直ちに招集出来る体制‧ プロセス アドホックでの情報共有 レスポンシブ( 即応的) 適切でタイムリーな情 報が提供可能 ⾃動化され、チーム間 同期の取れたレスポン スとアクション 定型化/⾃動化した振り 返りプロセス プロアクティブ (能動的) 機械学習での洞察に基 づく予測的な復旧、障 害予防 ⼀貫性が取れ、組織全 体に浸透したベスト‧ プラクティス ⾼度に⾃動化され、無 駄を排除したプロセス 継続的学習、改善、及 び予防 プリベンティブ (予防的) 37 サービスの可⽤性‧信頼性 エンジニアの⽣産性
  25. ⼀般的な導⼊ステップ 既存の運⽤プロセスに合わせて導⼊後、改善を繰り返し成熟度向上 + 横展開 38 1. Plan スコープの決定 2. Lift

    既存運⽤プロセスに沿った 形でPDを導⼊ 3. Shift ベストプラクティスを参考 にしながら運⽤体制‧プロ セスを最適化 4. Accelerate ⾃動化を全⾯的に採⽤した ⾼度化 ノイズ削減 MTTA削減‧可視化 MTTR削減‧運⽤負荷低減 予防的運⽤‧継続的改善 ⼿順書の⼀部⾃動化 • Automation Actions • Incident Workflows チーム間連携の強化 • Service Graph (粒度‧依存関係の整理) • Add Responders • Status Update コンテキストの提⽰ • Recent Changes • Related Incidents • Probable Origin 通知の⾃動化 • Escalation Policy/Schedule ノイズ削減 • Alert Grouping/Auto Pause • Event Orchestration インシデントの状況と影響範囲 の可視化 • Business Services • Visibility Console コンテキストの提⽰ • Past Incidents (過去の類似インシデント) ⾃動診断‧⾃動修復Jobを活⽤ した⾼度な運⽤ • Runbook Automation • Process Automation 分析‧レポートを活⽤した継続 的改善 • Insights Report • Postmortem • 導⼊効果が⾼い‧導⼊しや すいプロジェクトを選定 • 最初に適切なプロジェクト を選定することで、運⽤の 成熟度向上と他プロジェク トへの横展開が容易になる
  26. STEP 1. スコープの決定 適切なプロジェクトを選定するための参考情報 39 既存プロセスに⼤きな変更を加えることなく、 PD導⼊ですぐに解決できる課題の例: • 監視と通知を⼈⼒で⾏っているため、担当者をアサイン するまでに時間がかかっている

    • 監視を外部に委託しており、コストがふくらんでいる • アラートの数が多く、重要なインシデントが⾒落とされ るケースがある • 急ぎの対応が不要なアラートについても通知され、担当 者の負担になっている • インシデントの状況や影響範囲について社内で情報が共 有されず、対応が遅れたり関係者の負担になっている • 担当者の経験にばらつきがあり、どのように対応すべき かすぐに分からないケースがある • MTTAやMTTR等の指標を計測する⽅法がなく、どのよう に運⽤を改善したらいいのか分からない 導⼊しやすいプロジェクトの例: • 左記の課題について、多くのメンバーが深刻に受け⽌め ている • 新しい技術やプラクティス(SRE/DevOps等)に興味があ るメンバーがいる • 新しい技術や取り組みを社内外に発信することに情熱を 燃やしているメンバーがいる • プロジェクト化した場合に、強⼒な社内スポンサーから の⽀援が期待できる
  27. Forrester Wave™がPagerDutyをリーダーに選出 Process-Centric AI For IT Operations (AIOps), Q2 2023

    • “PagerDutyは通知を⾏うだけでなく、プロセ スやワークフローを⾃動化し、問題解決を加速 させます。” • “PagerDutyのイベントノイズ削減を利⽤した リファレンス顧客は、そのEvent Intelligence 機能を「⾮常に強⼒」評価しています。” • PagerDutyは11の評価基準で最⾼得点を獲得し ました: ◦ イベントノイズ削減 ◦ インシデントの検知と緩和 ◦ ⾃動化と修復 ◦ データの最適化 ◦ 製品ロードマップ 他 The Forrester Wave™ is copyrighted by Forrester Research, Inc. Forrester and Forrester Wave™ are trademarks of Forrester Research, Inc. The Forrester Wave™ is a graphical representation of Forrester’s call on a market and is plotted using a detailed spreadsheet with exposed scores, weightings, and comments. Forrester does not endorse any vendor, product, or service depicted in the Forrester Wave™. Information is based on best available resources. Opinions reflect judgment at the time and are subject to change.