SHOEISHA iD

※旧SEメンバーシップ会員の方は、同じ登録情報(メールアドレス&パスワード)でログインいただけます

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

Developers Summit 2024 セッションレポート(AD)

サービス危機を解決へと導く「インシデントコマンダー」の役割とは? 組織で取り組むインシデント対応と戦術

【15-E-3】サービスの危機に立ち向かうリーダーシップ~インシデントコマンダーの役割と戦略~

  • X ポスト
  • このエントリーをはてなブックマークに追加

 あらゆるものがソフトウェアでコントロールされる現代、どの業種業態においてもサービスのダウンはビジネスの危機につながる。その最後の砦が、インシデント対応を行う運用チームだ。そして今注目されているのが、その指揮官となるインシデントコマンダーの役割だ。インシデント管理プラットフォームを提供するPagerDuty株式会社の草間一人氏は、Developers Summit 2024において、インシデントコマンダーの役割と戦略ついて説明した。

  • X ポスト
  • このエントリーをはてなブックマークに追加

個人でのインシデント対応はやりがいがあるものの、組織の成長にはつながらない

 PagerDutyは、インシデント管理の効率化を実現するプロダクトである。インシデントを検知して、最適な担当者に通知し、その解決のヒントを提示する。これにより、リソースを最小限に抑えつつ問題の迅速な解決を図ることができる。さらにインシデントの対処のみならず、将来的なインシデントの予防にも貢献し、組織の運用効率の向上を目指すものだ。

PagerDutyの役割
PagerDutyの役割

 プレゼンテーションの冒頭で草間氏は「現代はインシデントコマンダーという役割の重要性が高まっています」と語った。Web系システムの運用エンジニアであるSRE(Site Reliability Engineering)という職種は広く認知されているが、これはGoogleが2016年に関連する本を出版した影響がある。しかし、インシデントコマンダーという職種は今のところあまり知られてないようだ。

 草間氏は「個人的には、今年以降インシデントコマンダーがSREと同様に大きな注目を浴びるようになり、それ自体が重要なポジションとなると確信しています」と述べた。

PagerDuty株式会社 Product Evangelist 草間一人氏
PagerDuty株式会社 Product Evangelist 草間一人氏

 これまで草間氏は、スタートアップ企業でのオールラウンダーから、特定の通信事業者でのクラウドサービス開発、PaaSのリードエンジニアなど幅広いキャリアを経験してきた。特に、PaaSの開発においては、ロードバランサーや認証・認可機能など、周辺機能の自主開発も含めた幅広い技術的課題に取り組んできた。

 そこでは開発だけでなく運用にも関わり、アラート対応から障害の切り分け、問題解決まで、24時間態勢での対応が求められる環境で働いてきた。たとえ深夜であってもアラートに迅速に反応し、頭をフル回転させて障害を解決する能力が身についた。

 草間氏は、これらの経験がエンジニア個人としては非常に貴重であったとしながら「チームやサービス全体としてみた場合、このアプローチが必ずしも最適だったわけではない」と振り返る。

 個人のスキルに頼るのではなく、体制を整えていればさらに迅速に問題を解決できたかもしれないし、思い込みによる誤った方向への調査に時間を浪費していた可能性もある。場合によってはサービスが長時間停止していた可能性もあり、判断ミスによる二次災害のリスクも否定できない。さらに、組織としての成長にも疑問が残る。このような状況は多くの組織にも当てはまるはずだ。

システムが提供する価値を高めるためにもインシデント対応は重要

 草間氏はインシデント対応の重要性と、その過程でPagerDutyがどれだけ貢献できるかに話を向けた。なお、インシデントとは、何らかの原因でユーザーに影響が出ている、正常に利用できない「状態」を指す。この状態はさまざまな原因で発生する可能性があり、システム障害はその原因の一つである。サービスが直接的な問題を抱えていなくても、経路上のネットワークの問題や人的ミスなどもインシデントを引き起こすことがある。

 セキュリティ関連のインシデントも存在し、その対応は非常に重要である。現代社会ではデジタル化が進み、ソフトウェアおよびサービスの重要性が年々高まっている。アプリケーションの複雑化、特にAPIの連携によるものや、ユーザーフィードバックへの即時対応の必要性が増しており、サービスの安定稼働が求められる状況の中で、インシデント対応の難易度は高まっている。このような背景のもと、人と人との連携やコミュニケーションが重要となる。そのため、インシデント対応を体系的に進める必要がある。

 草間氏は、インシデント対応や運用の重要性を説明するため、運用中のシステムが提供する価値の総量の最大化についての図を示した。縦軸は事業価値、横軸は時間であり、システムが提供する価値の総量は図の面積で表される。たとえば、開発を早めることでこの面積を増やすことができる。アジャイル開発などの開発手法は、この価値を増加させるために行われる取り組みである。

 開発だけでなく、インシデント対応もシステムが提供する価値を高めるために重要である。システムが停止すると、図の面積(提供する価値)が減少してしまうからである。インシデントに素早く気づき処理し、さらに将来起きる可能性のあるものを予防することで、価値を高めることができるのだ。

インシデント対応によって、価値の最大化に貢献できる
インシデント対応によって、価値の最大化に貢献できる

 次に草間氏は、システム障害やインシデント対応を行う者は、何か問題が発生した際に即座に対応する、正義の味方のような感覚になるが、それを目指してはいけないと指摘した。重要なのは、場当たり的な対処でなく、大きな目的を持ち、失敗しても立ち直ることができるマインドセットが重要だという。インシデントコマンダーのもとに、体系的な対応を行う組織が望ましい。

 インシデントコマンダーはインシデント対応の指揮者であり、重大インシデントを解決に導くことを目的として意思決定を行う。日々の地位に関係なく、重大インシデントにおいては最も位が高く、CEOやCIOよりも重要な決定を行うことができる。

インシデントコマンダーは意思決定と関係者の調整を担う
インシデントコマンダーは意思決定と関係者の調整を担う

 インシデント発生中は多くのアラートが上がり、同時に多くの対応を行う必要がある。このような状況では、一人で全てを対応することは不可能である。インシデントコマンダーは直接手を動かさず、作業は担当者に任せる。具体的な指示によって、誰が何をすべきかを明確にする。この役割分担により、効率的かつ迅速なインシデント対応が可能となる。

インシデントコマンダーとインシデント対応組織を支えるPagerDuty

 指揮をするインシデントコマンダーがボトルネックになることが懸念されるが、PagerDutyの支援によってそのリスクを低減できる。たとえば、影響範囲の把握には「Service Graph」機能があり、これによって誰とどのような連携をすれば良いかがわかる。

 大規模なインシデントが発生した場合、関係者を招集する「War room」が設けられる。リモートやオンラインでの対応が求められる現代では、SlackやTeamsなどのツールを用いて対応室を設けることが多い。PagerDutyなら、自動的にそれらのツール内に専用のチャンネルを作成し、関係者を追加してくれる。自動化されることによって、稼働が逼迫しやすいインシデント対応中でも抜け漏れなくコミュニケーションを取ることができる。

 インシデントコマンダーは、CIOや他のチーム、ユーザー対応担当者などと連携するためにインシデントの状況を逐一報告しなければならない。この連携は個別ではなくブロードキャスト型で行うことが重要であり、アナウンスを一元化することで、関係者全員に迅速に情報を伝えることが可能となる。PagerDutyには、ステータスアップデート機能や内部向けステータス情報の共有ができる。

 インシデントコマンダーに対して、経験豊かなCIOやCTOなどからの詳細な問い合わせや提案がある場合があるが、これらが混乱を招くこともある。インシデントコマンダーは、インシデント発生時にはCIOやCEOよりも権限を持ち、必要に応じてこれらの上層部からの不要な介入を防ぐ役割を持つ。さらに、担当メンバーの健康や疲労管理も求められる。PagerDutyでは、個人に負荷が偏らないようにする機能や、呼び出しのスケジュールを管理する「Analytics Dashboard」など、作業負担の可視化や管理を支援するツールが提供されている。

要員管理のダッシュボードも提供される
要員管理のダッシュボードも提供される

 インシデント対応中は多忙になるため、定型的な作業は自動化することが望ましい。ネットワークのトラブルシューティングやGitHubでの変更履歴の確認など、自動化可能な作業は自動化して、対応の迅速化を図るべきである。PagerDutyを使用すれば、関係する値の変更を一元的に集約し、一目で把握可能となる。これは、過去の類似インシデントや特定の時間帯に発生するインシデントのアラートの可視化も含む。特定の曜日の深夜にのみ発生するインシデントに対しては、その関連性を即座に確認し、過去の対応策を参照できる。

 さらに、Automation Actions機能を使用すれば、アラート発生時に自動的に特定のスクリプトを実行し、問題をチェックできる。Rundeckというオープンソースのジョブスケジューラーや、その商用版であるProcess AutomationやRunbook Automationとの連携による自動化も可能である。有事の際に自動的にスクリプトを実行し、問題の切り分けや修復を行うことができる。

自動化によってインシデント対応の作業は大幅に楽になる
自動化によってインシデント対応の作業は大幅に楽になる

 インシデントが解決した後に、同じ問題を再発させないようにするためにも、振り返りを行う「ポストモーテム」も重要だ。PagerDutyには、ポストモーテム作成の支援機能がある。受信したイベント、ステータスアップデート、インシデントノート、Slackで交わされた会話などからタイムラインを作成できるため、文書化が容易になる。

 インシデントコマンダーの役割は、システムを直接修復することではなく、調整することである。そのため、インシデントに詳しい必要はなく、コミュニケーションスキルやサービス全体の連携に関する知識、場での意思決定能力が求められる。PagerDutyでは、インシデントコマンダーに関する役立つコンテンツやガイドを公開している。さらに、生成AI技術を活用した「PagerDuty Copilot」などの便利な機能も提供されており、インシデント対応の効率化に役立てることができる。

 草間氏は最後に、改めてインシデントコマンダーの時代が到来することを唱え「非常に重要なポジションであり、社会に貢献する役職ですので、ぜひ目指していただきたいと思います。また、インシデント対応と言えば、PagerDutyが欠かせません。どうぞよろしくお願いします」とコメントした。

PagerDuty 無料トライアル

 インシデント対応には不可欠のPagerDuty。700以上ものツールと連携可能で、システム障害を自動的に検出・診断するだけでなく、適切な障害対応メンバーをアサインし、デジタル業務全体の修復ワークフローを自動化します。本記事で興味を持たれた方は、ぜひ無料トライアルをお試しください。

この記事は参考になりましたか?

  • X ポスト
  • このエントリーをはてなブックマークに追加

提供:PagerDuty株式会社

【AD】本記事の内容は記事掲載開始時点のものです 企画・制作 株式会社翔泳社

この記事は参考になりましたか?

この記事をシェア

  • X ポスト
  • このエントリーをはてなブックマークに追加
CodeZine(コードジン)
https://codezine.jp/article/detail/19221 2024/04/04 12:00

イベント

CodeZine編集部では、現場で活躍するデベロッパーをスターにするためのカンファレンス「Developers Summit」や、エンジニアの生きざまをブーストするためのイベント「Developers Boost」など、さまざまなカンファレンスを企画・運営しています。

新規会員登録無料のご案内

  • ・全ての過去記事が閲覧できます
  • ・会員限定メルマガを受信できます

メールバックナンバー

アクセスランキング

アクセスランキング