読み込み中...
読み込み中...
U 社は,一般のインターネット利用者に動画配信サービス(以下,T サービスという)を 24 時間 365 日提供している。T サービスは,W 社のパブリッククラウドサービスを使った T システムによって実現されている。稼働環境と試験環境が存在し,稼働環境では高い可用性が求められている。T サービスは,現在 T1 から T5 の五つのマイクロサービス(以下,T1~T5 サービスという)で構成されている。
| 項番 | 業務内容 | 役割分担 | |
|---|---|---|---|
| T1~T5 サービス | T6 サービス | ||
| 1 | アプリケーションプログラムの機能追加開発 | 開発課 | 開発課 |
| 2 | 試験環境を使用したサービスの試験 | 開発課 | 開発課 |
| 3 | 稼働環境及び試験環境におけるサービスの運用作業(リソース管理やキャパシティ管理など) | 運用課 | 運用課 |
| 4 | 稼働環境及び試験環境におけるサービスの監視及び障害対応 | 運用課 | S チーム |
| 5 | 運用改善(サービス運用作業の自動化など) | 運用課 | S チーム |
| 6 | 稼働環境及び試験環境へのアプリケーションプログラムのリリー注1)と展開 | 運用課 | S チーム |
| 7 | 稼働環境及び試験環境のインフラ運用,保守 | 運用課 | S チーム |
| 8 | 稼働しているアプリケーションプログラムの不具合の改修 | 開発課 | S チーム |
| 9 | サービス信頼性向上への取組 | 未実施 | S チーム |
| SLI | SLO | SLI の算出式 | 対象期間 |
|---|---|---|---|
| 稼働率1)(%) | 99.965% | (サービス稼働予定時間 - サービス停止時間) / サービス稼働予定時間2) | 対象日を含む過去 30 日間 |
また,S チームは,エラーバジェット(以下,EB という)の運用を採用することにした。EB とは,サービスの信頼性が一定程度損なわれても許容できる時間を示す指標のことであり,定期リリースや緊急リリースの展開に伴って発生する稼働停止の時間及びエラー対処に要した時間を EB から消費させていく運用を行う。T6 サービスの EB は SLO が未達状態とならないサービス停止時間の最大値とする。具体的には,SLO が表 2 の場合,対象日を含む過去 30 日間の対象期間の中で 15 分を EB の最大値とし,その範囲でのサービス停止を許容した上でサービスを運用する。
EB の消費がひっ迫した場合は,開発課と協議を行い,更なる信頼性低下のリスクを抑えるためにリリース作業と機能追加開発作業を凍結し,サービスの安定性を重視した信頼性回復のための作業を優先して行うことにする。EB の消費ひっ迫を EB が 3 分以下(EB を 12 分消費)となった場合と定め,信頼性回復作業は S チームと開発課が主体的に取り組む。S チームで検討した EB の運用ルール案を表 3 に示す。
| 項番 | ルール内容 |
|---|---|
| 1 | EB は,対象日を含む過去 30 日間で最大 15 分とする。 |
| 2 | EB が 3 分以下となった場合,S チームと開発課で協議を行って,翌日から稼働環境へのリリース作業を凍結し,信頼性回復のための改善活動を開始する。 |
| 3 | リリース作業の凍結解除については,S チームと開発課で協議を行い判断する。 |
S チームは,X 部長に運用ルール案を報告したところ,項番 2 について(イ)リリース作業の凍結については,例外規定を設けることを検討するように指示を受けた。
S チームは,検討した結果を X 部長に提案し,X 部長は提案内容を含めて運用ルール案を承認し,試行運用を開始するように S チームに指示した。
当日の EB = 前日の EB - 当日の EB の消費 + 当日の EB の回復
当日の EB の消費とは “当日発生したサービス停止時間のこと” であり,当日の EB の回復とは “過去に発生したサービス停止事象が対象日(当日)を含む過去 30 日間から外れたので,EB に追加する当該事象のサービス停止時間のこと” である。例えば,4 月 2 日の EB の計算では,前日の EB が 15 分,当日の EB の消費が 1 分,当日の EB の回復が 0 分であり,計算結果は 14 分となる。
| 日付 | 稼働率(%) | 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 分 | 無し |
また,S チームは,(ウ)4 月 26 日に信頼性回復のための改善活動を開始した。改善活動を開始するに当たって,S チームは,開発課と,EB の推移を示して議論を行い,T6 サービスの信頼性についての認識を合わせた。改善活動の候補を議論したところ,稼働環境へのリリース方法について,(エ)T6 サービスを停止することなくリリース作業が可能となる方式が実現できないかどうかの検討に取り組むことにした。
X 部長は,今後の本格運用に向けて,改善計画を策定することにした。
〔T サービスの開発と運用における課題〕の本文中の下線(ア)について,運用だけでなく開発の業務経験が必要な理由を,30 字以内で答えよ。
〔S チームの目標設定〕の本文中の下線(イ)について,例外規定を設ける理由を,30 字以内で答えよ。
〔試行運用の開始〕について答えよ。
表 4 中の a に入れる適切な数値を答えよ。
本文中の下線(ウ)について,4 月 26 日に信頼性回復のための改善活動を開始した理由を,25 字以内で答えよ。
本文中の下線(エ)について,サービスを停止することなくリリース作業が可能となる方式に変更することで得られる利点を,SLO の観点から 30 字以内で答えよ。
〔試行運用の振り返り〕について答えよ。
本文中の b に入れる適切な字句を,15 字以内で答えよ。
本文中の c に入れる適切な字句を,リクエスト数に着目して,15 字以内で答えよ。