令和7年度 春期 ITサービスマネージャ試験 午後I 問2 SREとエラーバジェットの運用

マネジメントサービスマネジメント開発プロセス

この問題は2025(R7)春 ITサービスマネージャ 午後Iに出題されたものです。出題時点の法令・制度に基づく内容のため、現行の内容と一致しない場合があります。

本ページの問題文・選択肢は、原本の体裁を Web 表示用に正規化しています(改行・記号・数式・図表参照の調整)。設問の趣旨および正解に影響する変更は加えていません。

学習ガイド

クラウドネイティブ環境の信頼性向上を題材に、SRE(Site Reliability Engineering)の考え方を問う問題です。SLIとSLOの設定、エラーバジェットに基づくリリース判断、信頼性回復活動を開始する条件、無停止リリース方式の利点など、SREの中核概念が試行運用の数値とともに具体的に展開されます。この記事では、エラーバジェットを残高として計算しながら、各判断のタイミングと根拠を再現していきます。

この記事で押さえる論点

  • SLI・SLOとエラーバジェットの関係を説明する
  • バジェット消費時の行動ルール(リリース停止・改善優先)を運用に落とす
  • 無停止リリース方式への変更がSLOに与える利点を述べる

問題本文

問2 高可用性システムの信頼性向上に関する次の記述を読んで,設問に答えよ。

U社は,一般のインターネット利用者に動画配信サービス(以下,Tサービスという)を24時間365日提供している。Tサービスは,W社のパブリッククラウドサービスを使ったTシステムによって実現されている。稼働環境と試験環境が存在し,稼働環境では高い可用性が求められている。Tサービスは,現在T1からT5の五つのマイクロサービス(以下,T1~T5サービスという)で構成されている。

〔Tサービスの開発と運用における課題〕

U社情報システム部は,開発課と運用課で構成され,開発課は開発課長の下でTサービスの開発を,運用課は運用課長の下でTサービスの運用を担当している。情報システム部では,スクラムによるアジャイル開発を採用し,開発課と運用課が連携してリリースサイクルを短縮することを目的にDevOpsを推進してきた。スクラム開発によってリリース頻度が高まる一方で,運用課の受入準備が追い付かないといった事象が度々発生するようになった。また,停止時間は僅かではあるがサービス停止の事象も何回か発生しており,システムの信頼性が確保された安定した運用が求められている。

そこで,情報システム部のX部長は,SRE (Site Reliability Engineering) の考え方を取り入れ,開発から運用までのライフサイクルに関わり,稼働するTサービスの信頼性に責任をもつ組織を作る必要があると考えた。X部長は,U社の経営層から了承を得て,暫定的なSREチーム(以下,Sチームという)を作り,3か月後に正式なサービス開始を予定しているTサービスの一つのマイクロサービス(以下,T6サービスという)を対象として,検証を行うことにした。検証期間の間,情報システム部は,開発課,運用課及びSチームの三つの組織構成とし,SチームはX部長が直轄する。

T6サービスは,今後も反復アプローチに基づいた開発が継続する状況にあり,開発課は機能追加の開発に専念する必要がある。X部長は,チームの編成に当たって,開発課長及び運用課長と調整を行い,開発課と運用課から開発経験と運用経験をともに有する要員をSチームに参画させることにし,T6サービスを含むTサービスに関する役割分担を表1に整理した。

表1 Tサービスの役割分担
図の説明テキスト

表1 Tサービスの役割分担

項番 業務内容 役割分担 (T1〜T5サービス) 役割分担 (T6サービス)
1 アプリケーションプログラムの機能追加開発 開発課 開発課
2 試験環境を使用したサービスの試験 開発課 開発課
3 稼働環境及び試験環境におけるサービスの運用作業(リソース管理やキャパシティ管理など) 運用課 運用課
4 稼働環境及び試験環境におけるサービスの監視及び障害対応 運用課 Sチーム
5 運用改善(サービス運用作業の自動化など) 運用課 Sチーム
6 稼働環境及び試験環境へのアプリケーションプログラムのリリース 1) と展開 運用課 Sチーム
7 稼働環境及び試験環境のインフラ運用,保守 運用課 Sチーム
8 稼働しているアプリケーションプログラムの不具合の改修 開発課 Sチーム
9 サービス信頼性向上への取組 未実施 Sチーム

注 1) リリースには,機能追加に対応して行う定期リリースと不具合修正を行う緊急リリースがある。両リリースとも,展開に先立って,利用者に対して展開に伴う停止連絡を行う。

〔Sチームの目標設定〕

サービスの信頼性には,スループットや可用性などが該当し,サービスの信頼性を示す指標には,SLI(Service Level Indicator:サービスレベル指標)とSLO(Service Level Objective:サービスレベル目標)がある。SLIは,信頼性の目標が守られているかどうかを評価するために使うサービスレベルの計測値のことである。SLOは,SLIで計測されるサービスレベルの目標値のことである。

Sチームは,T6サービスにおけるSLIとSLOについて検討を行った。その結果を表2に示す。ここで,稼働率は算出式に基づいて毎日算出することにし,対象期間は対象日を含む過去30日間とする。

表2 T6サービスにおけるSLIとSLO
図の説明テキスト

表2 T6サービスにおけるSLIとSLO

SLI SLO SLIの算出式 対象期間
稼働率 1) (%) 99.965% (サービス稼働予定時間 - サービス停止時間) / サービス稼働予定時間 2) 対象日を含む過去 30 日間

注 1) 稼働率(%)は,小数第4位を四捨五入して小数第3位まで算出する。
注 2) サービス稼働予定時間とは,対象期間の対象日を含む過去30日間のことであり,分の単位に変換すると43,200分となる。

また,Sチームは,エラーバジェット(以下,EBという)の運用を採用することにした。EBとは,サービスの信頼性が一定程度損なわれても許容できる時間を示す指標のことであり,定期リリースや緊急リリースの展開に伴って発生する稼働停止の時間及びエラー対処に要した時間をEBから消費させていく運用を行う。T6サービスのEBはSLOが未達状態とならないサービス停止時間の最大値とする。具体的には,SLOが表2の場合,対象日を含む過去30日間の対象期間の中で15分をEBの最大値とし,その範囲でのサービス停止を許容した上でサービスを運用する。

EBの消費がひっ迫した場合は,開発課と協議を行い,更なる信頼性低下のリスクを抑えるためにリリース作業と機能追加開発作業を凍結し,サービスの安定性を重視した信頼性回復のための作業を優先して行うことにする。EBの消費ひっ迫をEBが3分以下(EBを12分消費)となった場合と定め,信頼性回復作業はSチームと開発課が主体的に取り組む。Sチームで検討したEBの運用ルール案を表3に示す。

表3 EBの運用ルール案
図の説明テキスト

表3 EBの運用ルール案

項番 ルール内容
1 EBは,対象日を含む過去30日間で最大15分とする。
2 EBが3分以下となった場合,Sチームと開発課で協議を行って,翌日から稼働環境へのリリース作業を凍結し,信頼性回復のための改善活動を開始する。
3 リリース作業の凍結解除については,Sチームと開発課で協議を行い判断する。

Sチームは,X部長に運用ルール案を報告したところ,項番2について(イ)リリース作業の凍結については,例外規定を設けることを検討するように指示を受けた。Sチームは,検討した結果をX部長に提案し,X部長は提案内容を含めて運用ルール案を承認し,試行運用を開始するようにSチームに指示した。

〔試行運用の開始〕

Sチームは,4月1日からEBの試行運用を開始した。T6サービスは,2月1日からサービス開始に向けた準備を進めて稼働環境で稼働しており,3月はリリース作業などによるサービス停止の停止時間は発生していない。したがって,4月1日開始時点でのSLIの稼働率は,対象日を含む過去30日間のサービス稼働予定時間である43,200分から算出された100%となり,EBは15分である。試行運用開始後の結果を表4に示す。ここで,EBは,次の計算式に基づいて計算される。

当日のEB=前日のEB-当日のEBの消費+当日のEBの回復

当日のEBの消費とは“当日発生したサービス停止時間のこと”であり,当日のEBの回復とは“過去に発生したサービス停止事象が対象日(当日)を含む過去30日間から外れたので,EBに追加する当該事象のサービス停止時間のこと”である。例えば,4月2日のEBの計算では,前日のEBが15分,当日のEBの消費が1分,当日のEBの回復が0分であり、計算結果は14分となる。

表4 試行運用開始後の結果
図の説明テキスト

表4 試行運用開始後の結果

日付 稼働率(%) EB(分) 停止時間(分) サービス停止の発生した事象
4月1日 100% 15分 0分 無し
4月2日 99.998% 14分 1分 機能追加に伴う定期リリース作業として、T6サービスの停止及び起動を行った。
4月3日 99.998% 14分 0分 無し
4月4日 99.995% 13分 1分 4月2日にリリースしたT6サービスに一部不具合があり、改修が発生した。緊急リリース作業として、T6サービスの停止及び起動を行った。
(省略)
4月9日 99.993% 12分 1分 機能追加に伴う定期リリース作業として、T6サービスの停止及び起動を行った。
4月10日 99.993% 12分 0分 無し
4月11日 99.991% 11分 1分 4月9日のリリース後、T6サービスのエラーが増加傾向にあったので、応急措置としてT6サービスの停止及び起動を行った。
(省略)
4月16日 99.988% 10分 1分 4月9日にリリースしたT6サービスに一部不具合があり、改修が発生した。緊急リリース作業として、T6サービスの停止及び起動を行った。
4月17日 99.977% 5分 5分 W社のパブリッククラウドサービスで障害が発生し、復旧作業完了までサービスが停止した。
4月18日 99.977% 5分 0分 無し
(省略)
4月25日 99.970% 2分 1分 機能追加に伴う定期リリース作業として、T6サービスの停止及び起動を行った。
2分 定期リリース作業後に、改修の一部が正しく行われていないことが判明し、リリース戻し作業、T6サービスの停止及び起動を行った。
(省略)
5月1日 99.970% 2分 0分 無し
5月2日 99.972% a 0分 無し

注記1 稼働率、EB及び停止時間の値は、該当日付終了時点に算出された値である。
注記2 省略に該当する日付の稼働率とEBの値は、省略直前の日付の値と同じであり、サービス停止に該当する事象は発生していないものとする。
注記3 定期リリースと緊急リリースは区別せず、サービス停止した場合は、EBを消費する。

また、Sチームは、4月26日に信頼性回復のための改善活動を開始した。改善活動を開始するに当たって、Sチームは、開発課と、EBの推移を示して議論を行い、T6サービスの信頼性についての認識を合わせた。改善活動の候補を議論したところ、稼働環境へのリリース方法について、T6サービスを停止することなくリリース作業が可能となる方式が実現できないかどうかの検討に取り組むことにした。

〔試行運用の振り返り〕

X部長は,試行運用の振り返りと今後の本格運用に向けた改善点などについて,Sチームにヒアリングを行ったところ,次の意見が出された。

  • 開発課と b の実施判断について,EBを使って効果的な議論を行い,T6サービスの信頼性低下のリスクを抑えることができた。
  • 4月11日は,“数名の利用者が,問合せリクエストへの応答がないので再度リクエスト入力したという報告”を受けた対策をしている。調査したところ,プログラムでエラーが発生していて,リクエストが失敗となっていた。稼働時間を基に算出する稼働率のSLIだけでは,十分でないように感じる。そこで,サービス利用者からの客観的な評価を反映したサービスの信頼性指標として“T6サービスが受け付けた総リクエスト数に対する c の割合”をSLIに追加した方がよい。

X部長は,今後の本格運用に向けて,改善計画を策定することにした。

設問と解答・解説

設問1

〔Tサービスの開発と運用における課題〕の本文中の下線(ア)について,運用だけでなく開発の業務経験が必要な理由を,30字以内で答えよ。

模範解答

アプリケーションプログラムの不具合の改修を実施するから

表1項番8の業務内容を行う必要があるから

採点基準(配点 8点)

知識・理解度(内容)(5点)

  • 5: 開発経験が必要な理由として、アプリケーションの不具合改修や特定の業務内容に明確に言及している。
  • 3: 開発経験が必要な理由は示されているが、具体的な業務内容への言及が不十分である。
  • 0: 理由が示されていない、または誤っている。

論理性(構造)(3点)

  • 3: 「〜から」などの理由を示す形式で、論理的かつ簡潔にまとめられている。
  • 1: 理由を示す形式になっていない、あるいは文脈がやや不自然である。
  • 0: 構造が破綻しており、意味が読み取れない。

解説

SRE(Site Reliability Engineering)においては、システム運用の信頼性を高めるため、ソフトウェアエンジニアリングの手法を運用業務に適用します。
T6サービスのSREチームの役割として、単に運用業務を担当するだけでなく、自ら アプリケーションプログラムの不具合の改修 を行うことが求められています。
このため、運用業務の経験のみならず、開発の業務経験が必要となります。

高得点のポイント

  • SREチームの業務として アプリケーションプログラムの不具合の改修 に明確に言及していること。
  • 「開発から運用までのライフサイクル全般」という抽象的な記述ではなく、具体的な実務内容に触れていること。
  • 理由を説明する自然な文末(「〜を実施するから」など)で結ばれていること。

設問1は,正答率がやや低かった。Sチームが開発から運用までのライフサイクル全般に関わる点だけに着目した解答も多かった。T6サービスに着目して,U社SREチームの要員には,運用だけではなく開発の業務経験も必要な理由を解答してほしい。

設問2

〔Sチームの目標設定〕の本文中の下線(イ)について,例外規定を設ける理由を,30字以内で答えよ。

模範解答

故障対応などの緊急リリースを行う必要があるから

採点基準(配点 8点)

知識・理解度(内容)(5点)

  • 5: 例外規定を設ける理由として、故障対応などの緊急リリースが必要であることを明確に示している。
  • 3: 緊急時の対応であることは示されているが、故障対応や緊急リリースなどの具体的な状況への言及が不足している。
  • 0: 例外規定の理由が示されていない、または誤っている。

論理性(構造)(3点)

  • 3: 「〜から」などの理由を示す形式で、論理的にまとめられている。
  • 1: 理由を示す形式になっていない、あるいは表現にやや不自然さがある。
  • 0: 構造が破綻しており、意味が読み取れない。

解説

エラーバジェット(EB)が枯渇した場合、サービスの信頼性を取り戻すために原則として新規リリースを制限し、改善活動に注力します。
しかし、故障対応などの緊急リリース については、システムを復旧させて可用性を回復させるために不可欠であるため、EBが枯渇していても例外的にリリースを許可する必要があります。

高得点のポイント

  • 例外規定の対象が 故障対応などの緊急リリース であることを明示していること。
  • サービスの可用性を維持・回復するための緊急措置であることを文脈に含めていること。
  • 指定された字数(30字以内)で簡潔にまとめていること。

設問3

〔試行運用の開始〕について答えよ。

(1)

表4中の 空欄 a に入れる適切な数値を答えよ。

模範解答

3

配点 6

解説

4月25日時点でのEB(エラーバジェット)の残分を計算する設問です。
設問の条件や表のデータから、4月25日の時点でEBがどの程度消費されたかを読み取ります。
これまでの累積ダウンタイムを計算し、許容されるダウンタイム(初期EB)から差し引くことで、残りのEBが 33 分であることが分かります。

(2)

本文中の下線(ウ)について,4月26日に信頼性回復のための改善活動を開始した理由を,25字以内で答えよ。

模範解答

4月25日にEBが3分を下回ったから

採点基準(配点 6点)

知識・理解度(内容)(4点)

  • 4: 4月25日にEB(エラーバジェット)が3分を下回ったことに明確に言及している。
  • 2: EBの減少には触れているが、具体的な日付や閾値(3分を下回ったこと)への言及が欠けている。
  • 0: 内容が不適切である。

論理性(構造)(2点)

  • 2: 因果関係が明確で、理由を示す形式でまとめられている。
  • 1: 因果関係がやや不明確である。
  • 0: 文として成立していない。

解説

試行運用中において、4月26日に信頼性回復のための改善活動を開始した理由を問う設問です。
ルールの規定により、EBが一定の閾値を下回った際に改善活動へシフトすることが定められています。
具体的には、4月25日の時点で EBが3分を下回った ため、ルールに則り、翌日の4月26日から新規リリースを停止し、信頼性回復活動を開始しました。

高得点のポイント

  • 4月25日 という具体的な日付を明記していること。
  • EBが3分を下回った という具体的なトリガー(事象)を正確に指摘していること。
  • 事実関係を簡潔に、25字以内で表現していること。

(3)

本文中の下線(エ)について,サービスを停止することなくリリース作業が可能となる方式に変更することで得られる利点を,SLOの観点から30字以内で答えよ。

模範解答

リリース作業でのEB消費を防止できるから

稼働率が低下することを防ぐことができるから

障害復旧時間を短縮することができるから

採点基準(配点 6点)

知識・理解度(内容)(4点)

  • 4: SLOの観点から、EB消費の防止、稼働率低下の防止、または障害復旧時間の短縮のいずれかの利点を適切に説明している。
  • 2: リリース方式変更の利点には触れているが、SLOの観点(EBや稼働率など)との結びつきが弱い。
  • 0: 内容が不適切である。

論理性(構造)(2点)

  • 2: 設問の要求(〜利点を、〜観点から答える)に従い、論理的かつ簡潔にまとめられている。
  • 1: 文意は通じるが、表現が冗長または不自然である。
  • 0: 文として成立していない。

解説

リリース作業において、サービスを停止することなくリリースできる方式を採用する利点を、SLO(Service Level Objective) の観点から説明する設問です。
サービスを停止するリリース方式では、計画停止時間もダウンタイムとしてカウントされ、EBを消費してしまいます。
これを無停止方式に変更することで、リリース作業によるEBの消費を防止 でき、結果として 稼働率の低下を防ぐ ことが可能となります。

高得点のポイント

  • EB(エラーバジェット)の消費を防止 できる点に言及していること。
  • 稼働率の低下防止 または 障害復旧時間の短縮 というSLO上の明確なメリットに触れていること。
  • 30字以内という制限の中で、理由や利点として適切な文末表現にしていること。

設問3(2)は,正答率は平均的であった。4月25日にEB(エラーバジェット)が3分を下回った点について解答してほしかったが,部分的な解答も多かった。

設問4

〔試行運用の振り返り〕について答えよ。

(1)

本文中の 空欄 b に入れる適切な字句を,15字以内で答えよ。

模範解答

稼働環境へのリリース作業

採点基準(配点 8点)

正確性(内容)(8点)

  • 8: 「稼働環境へのリリース作業」と正確に解答している。
  • 4: 指定の字句の一部が含まれているが、完全ではない。
  • 0: 誤った字句を解答している。

解説

試行運用の振り返りにおいて、EBを消費する大きな要因となり、SREと開発チームの間で効果的な議論の対象となったものを答える設問です。
本文の文脈から、信頼性に影響を与え、EBを消費する主要な作業は 稼働環境へのリリース作業 であり、この作業の頻度や手法について両チームで議論を重ねることがSREの実践として重要視されています。

高得点のポイント

  • 本文中の適切な箇所から 「稼働環境へのリリース作業」 を正確に抜き出していること。
  • 空欄の前後と意味が繋がるように解答していること。

(2)

本文中の 空欄 c に入れる適切な字句を,リクエスト数に着目して,15字以内で答えよ。

模範解答

成功したリクエスト数

採点基準(配点 8点)

正確性(内容)(8点)

  • 8: 「成功したリクエスト数」と正確に解答している。
  • 4: 指定の字句の一部が含まれているが、完全ではない。
  • 0: 誤った字句を解答している。

解説

サービスの信頼性を示す指標(SLI)として、リクエスト数に着目して可用性を測定する場合の適切な定義を答える設問です。
クラウドネイティブなシステムにおいて可用性を計測する際、システムが処理した全リクエストのうち、成功したリクエスト数 の割合をSLIとして設定することが一般的です。これにより、ユーザー視点でのサービスの品質を適切に評価できます。

高得点のポイント

  • 本文中の適切な箇所から 「成功したリクエスト数」 を正確に抜き出していること。
  • 「リクエスト数に着目して」という設問の条件に合致する字句を選択していること。

設問4(1)は,正答率がやや低かった。EBを使って効果的な議論を行った点に着目し,稼働環境へのリリース作業について解答してほしかったが,信頼性回復の改善活動といった解答も多かった。