SRE オンコール

オンコール体制をアップデートした話

SRE オンコール

こんにちは!技術部プラットフォームグループでマネジャーを担当しているトラです。プラットフォームグループ(以降はPFGと省略します)では複数のペパボサービスを横断的にSREとして支えています。この記事ではSREの重要な責務のひとつである「オンコール」をトピックに、取り組んだことを紹介します。

背景

PFGは複数の事業部をまたがる横断組織であり、事業部とチームを1対1で用意しています。2021年末に関わる事業部の範囲を広げるべく、チームメンバーの再構成とチームの新設を行いました。 チームを再構成したことによる負担軽減の対策のひとつとして、オンコール体制のアップデートを行いました。

新チーム組成の図

どうオンコール体制を変えたか

体制変更前は担当する事業部チームとオンコール担当は同じメンバーでした。変更後の体制では、日中帯の運用タスクは担当事業部チームで対応し、夜間休日オンコールは担当チームの枠を超えて全サービスを見る体制にしました。狙いは以下の通りです。

  • サービスによりチーム人数が異なるため、対象のサービスを広げることで、オンコール待機時間と対応負担を平準化する
  • 横断組織としての強みを活かすべく「サービス特有の事情はドキュメント化」「システムの統一化」を行いやすい文化を作る
  • 体制変更を機に不要なアラートの精査・自動化促進の優先度をあげやすくする

具体的な取り組み

狙いを実現するにあたり行った具体的な取り組みを、3点紹介します。

PagerDutyスケジュール設計

ペパボでは、オンコール通知にインシデント管理サービスであるPagerDutyを利用しています。今回のオンコール設計を実現するにあたり、PagerDutyのスケジュール設定が役立ちしました。通知対象のサービス・スケジュール・カレンダーがそれぞれ独立して設定が定義でき、組み合わせることができます。これにより、日中帯と夜間休日で通知対象を変更しています。

PagerDutyの設計図

このスケジュール変更に併せて、週次でのシフト変更から日次でのシフト変更に切り替えました。体制変更前と比較すると担当するサービスが増えるため、一人当たりのアラート対応する可能性は上がります。日次のシフト変更にすることで、深夜対応が連続してしまうことを避けることができます。

スキルマップシートの活用

変更後の体制では、日々の業務では携わらないサービスの障害対応を行うケースも発生します。そこで、スキルマップシートを拡張し、技術分野(言語・ミドルウェア)とサービス(提供機能別)で個々の力量を可視化し、エスカレーション先として誰が適切なのかをわかりやすくしました。これにより、障害発生時のエスカレーション先が明確になり、その間にサービス影響が広がってしまうことを防ぎます。

アラート対応ドキュメントの認知負荷軽減

サービスによってドキュメント場所や管理方法は異なっています。そこで、各サービスの障害対応に必要な最小限の情報と各種ドキュメントのリンクが載る「探す前にまずここをみるドキュメント」を用意しました。あくまで詳細はリンク先とすることで、ドキュメントの形骸化や二重管理を避けています。

結果

この運用に変更して三カ月経過後、チームメンバーに対してアンケートを取得しました。その結果、全員からオンコール対応負担の軽減が確認できました。また、夜間オンコールの対応遅れがSLOに悪影響を及ぼした例は確認できませんでした。しかしこれは重大なアラートが発生していないだけの可能性もあるため、安心はできません。引き続きMTTRの計測を行うなどして定量的な評価が必要です。

一方で、同じ部署の仲間といえど夜間にメンバー間でエスカレーションを出す心理的障壁が大きいことも見えてきました。また、アンケートよりスキルマップシートが使われたケースも確認できませんでした。ここにも何かしら対策を講じる必要があります。ドキュメントについても活用されたケースは少なく、形骸化しにくい工夫はしたもののより便利なものに変えていく必要があります。ドキュメントについてはオンコールの文脈だけではなく、より構造化された別のソリューションが必要と感じています。

最後に

チームをまたがるオンコール体制をアップデートした話を紹介しました。オライリーから出版されている「SRE サイトリライアビリティエンジニアリング」(通称SRE本)にも、オンコール対応の大変さが語られています。今回の取り組みによりチームメンバーのオンコール対応負担を軽減できたことは成果のひとつですが、課題も多く見つかりました。

オンコールの体制変更は効果を発揮していますが、組織やサービスの成長といった環境の変化により適宜見直しが必要です。そのためにも定期的なチームメンバーのヒアリング(ペパボでは1on1の機会も多いです)や、定量的な計測を用いて課題を抽出し、最適化していくことが大切です。このような変化を常に楽しみ、サービスの成長に寄与できる仲間を募集しています。ぜひ一緒にペパボのSREをもっとおもしろくしていきませんか!