SHOEISHA iD

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

ProductZine Day&オンラインセミナーは、プロダクト開発にフォーカスし、最新情報をお届けしているWebメディア「ProductZine(プロダクトジン)」が主催する読者向けイベントです。現場の最前線で活躍されているゲストの方をお招きし、日々のプロダクト開発のヒントとなるような内容を、講演とディスカッションを通してお伝えしていきます。

ProductZine Dayの第2回開催です。

ProductZine Day 2024 Winter

ProductZine Day 2024 Winter

CodeZine ピックアップ(AD)

LINEのプライベートクラウド「Verda」のDevOpsを支えるPagerDutyによるインシデント管理

 LINEが2016年から運用しているプライベートクラウド「Verda」には、同社がサービスを提供するにあたって必要なシステム基盤が展開されている。およそ80名の開発者がVerda上でさまざまなサービスを開発しており、インシデントの対応も開発者が担う。インシデント対応の効率化のために「PagerDuty」を利用しており、Slackなど他のアプリケーションと連携したインシデント対応の割り当てやエスカレーションなどを実現している。Verda Reliability Engineeringチームの萬治 渉氏に、PagerDutyの活用方法を聞いた。

 本記事は、ソフトウェア開発者向けのオンラインメディア「CodeZine(コードジン)」からの転載記事です(オリジナル記事)。

LINEのプライベートクラウド「Verda」のインシデント対応の体制

 LINE株式会社が提供するサービスは、2011年に登場したコミュニケーションアプリ「LINE」が有名だ。しかし、前身時代を含めると20年以上の歴史のある企業である。そのサービスの基盤となるインフラは物理サーバーや仮想マシンが混在しており非効率だったことから、2016年よりプライベートクラウド「Verda(ベルダ)」の構築が始まった。

 「最初はOpenStackベースの仮想マシンとベアメタルサーバーを管理する基盤としてプロトタイプができ、その後ロードバランサーやDNSなど、サービスインフラに必要な機能が追加されていていきました。今は基本的な計算資源からそれを抽象化するようなサービス、ネットワーク機能、データベースなど、パブリッククラウドのようにさまざまな機能を拡張してきました」と語るのは、VerdaのSREを担うVerda Reliability Engineeringチームのメンバーである萬治 渉氏。

LINE株式会社 Verda Reliability Engineering チーム 萬治 渉氏
LINE株式会社 Verda Reliability Engineering チーム 萬治 渉氏

 現在のVerdaは物理サーバー5万台弱、仮想サーバーは約10万台、データストアやロードバランシングなどのインスタンスが2万弱ほど稼働している。LINEが展開するビジネスに必要な各種サービスが展開されているが、パブリッククラウドのように外部ユーザーが利用できるように公開されているわけではない。そしてこのVerda上の各サービスを開発するメンバーは80名ほどで、Verdaの開発と運用を一貫して担っている。萬治氏のようにSREを担当するメンバーは5名。なお、萬治氏自身もYAMLなどのコードを書くインフラエンジニアである。

 Verdaの各サービスを利用するユーザーの困りごとや障害発生時の対応、情報共有も開発者が行っている。PagerDuty導入以前のVerdaのインシデント対応フローは、Slackの専用チャンネルに投稿されるアラートを開発者が見て、気づいたメンバーが自発的に対応するといったものであった。しかし、アラートが増えると重要度の判断が難しく、誰が対応すべきかが明らかでないことから、即時対応ができないこともあった。

 そうした課題を背景に、萬治氏は、上司のすすめもあってPagerDutyを試用して導入を決定する。インシデント対応を外部のMSP(マネージドサービスプロバイダ)企業に依頼するといった選択肢もあるが、そうはしなかった。「外部に頼むには、インシデントを検知してから担当者に通知するまでを文書でマニュアル化しなければなりません。それならコードを書いたほうが圧倒的に速いのでPagerDutyを使うことにしました」(萬治氏)

 萬治氏は、Verdaのインシデント対応の改善のためPagerDutyやその他アプリの設定だけでなく、各チームとの調整や、オンコール対応などの整備にも関わった。その背景について「Verdaの規模が大きくなるにつれ、緊急対応の割合が増えてきたため、インシデント対応のスピードを速くするために重要なアラートが開発者に届く仕組みを作りたかったのです」と語った。

 現在は、緊急対応が必要なインシデントに24時間体制で対応するオンコール対応を、それぞれのサービス開発チームで体制を組んで実現している。チームごとに1週間あたり2人のエンジニアがつく体制で、アラートが発生したときに担当者に電話をかけたりアラート音で通知したりしている。担当となる頻度はチームの規模によって異なり、月に1回〜2回巡ってくる体制となっている。

 なお、Slackに専用チャンネルを設け、PagerDutyからの通知を受けたタイミングで、サポート担当者のスケジュールからその時点の担当者のメールアドレスを返すAPIを使って、メンションする担当者を自動的に割り当てる試みも実施している。対応内容は別途課題管理アプリケーションとも連携してチケット化する。これによって、チーム内で誰がどのインシデントに対応していることや、進捗状況もわかりやすくなった。

次のページ
PagerDutyの導入で確実に対応できるオンコール体制を確立 

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

CodeZine ピックアップ連載記事一覧

もっと読む

この記事の著者

森 英信(モリ ヒデノブ)

就職情報誌やMac雑誌の編集業務、モバイルコンテンツ制作会社勤務を経て、2005年に編集プロダクション業務やWebシステム開発事業を展開する会社・アンジーを創業。編集プロダクション業務においては、IT・HR関連の事例取材に加え、英語での海外スタートアップ取材などを手がける。独自開発のAI文字起こし・...

※プロフィールは、執筆時点、または直近の記事の寄稿時点での内容です

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

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

この記事をシェア

ProductZine(プロダクトジン)
https://productzine.jp/article/detail/1685 2023/03/30 12:00

おすすめ

アクセスランキング

アクセスランキング

イベント

ProductZine Day&オンラインセミナーは、プロダクト開発にフォーカスし、最新情報をお届けしているWebメディア「ProductZine(プロダクトジン)」が主催する読者向けイベントです。現場の最前線で活躍されているゲストの方をお招きし、日々のプロダクト開発のヒントとなるような内容を、講演とディスカッションを通してお伝えしていきます。

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

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

メールバックナンバー

アクセスランキング

アクセスランキング