DEVELOPER’s BLOG
技術ブログ
SREで重要となるSLA、SLO、SLIとは!?

1.はじめに
SRE(Site Reliability Engineering)は、Googleが提唱した運用手法で、システムやサービスの安定性と信頼性を高め、サービス停止や障害を防ぐことで顧客にとって高品質な体験を提供することを目的としています。その中で、SLA(Service Level Agreement)、SLO(Service Level Objective)、SLI(Service Level Indicator) の3つは、品質管理を支える重要な柱となっています。それぞれが異なる役割を持ちながら密接に関連し合い、SREの実践において欠かせない要素です。これらについて、ピザ配達サービスと電車運行サービスを例に、一緒に理解を深めていきましょう。
2.SLA、SLO、SLIの定義と相互関係
SLA、SLO、SLI の定義を押さえ、ピザ配達サービスの事例で具体的に考えてみましょう。
2-1.SLA(Service Level Agreement: サービスレベル契約)
SLAは、サービス提供者と利用者(顧客)との間で交わされる契約です。具体的には、サービスがどのように提供されるかを明示し、顧客に対して「どの程度信頼できるのか」を示します。
目的
サービス提供者は提供すべきサービスレベルを明確にし、利用者は受け取るサービスの品質を理解することができるため。
ピザ配達サービスの例
ピザチェーン店が「90%以上の注文を30分以内にお届けします」と顧客に約束する。
この「30分以内に90%以上の注文を届ける」という約束がSLAです。これにより、顧客は「自分の注文が確実に時間内に届く可能性が高い」という具体的な期待を持つことができます。同時に、ピザチェーン店にとっては、サービスの信頼性を顧客に示すことで、競合他社との差別化を図り、リピーターの獲得につなげる重要な要素となります。例えば、配達が30分を超えるケースが10%を超えると、SLAの達成が困難になります。その場合、運用を見直す必要があると判断できます。このように、SLAは顧客との約束であると同時に、サービス提供者自身が信頼性を維持・向上させるための目安ともなるのです。
2-2.SLO(Service Level Objective: サービスレベル目標)
SLOは、サービス提供者がSLAを守るために内部で設定する目標値です。これは具体的な基準であり、達成することでSLAを実現します。
目的
内部で達成すべき品質目標を設定し、運用方針を明確化する。
ピザ配達サービスの例
配達スタッフが「95%以上の注文を25分以内に届ける」という目標を設定する。
SLAを守るには、少し厳しめの内部目標(SLO)を設ける必要があります。これは、予期せぬトラブルや運用上のばらつきに備えるためです。例えばピザ配達サービスでは、悪天候や交通渋滞、注文の集中など、配達時間が遅れてしまう要因が発生することがあります。これらの影響を考慮し、SLOを「95%以上の注文を25分以内に届ける」といった厳しめの基準に設定することで、運用に余裕を持たせ、万が一の事態にもSLAが守られる確率を高めることができるようにしています。
また、SLOは単なる目標ではなく、運用チーム全体の努力の指針となるものです。SLOを明確にすることで、調理や配達のプロセスの見直し、配達員の配置の最適化、ルート計画の改善など、チーム全体が具体的な改善策に取り組みやすくなります。このように、SLOはSLAを達成するための「現実的かつ挑戦的な基準」として、サービス運用の質を向上させる重要な役割を果たしています。
2-3.SLI(Service Level Indicator: サービスレベル指標)
SLIは、サービスの状態を測定するための具体的なデータや数値です。このデータをもとに、SLAやSLOの達成状況を確認します。
目的
サービスの品質を数値で把握し、問題点を明確にする。
ピザ配達サービスの例
実際に注文が配達されるまでの時間を件数で割った平均配達時間や25分以内の配達成功率、25分超えの遅延率を算出する。
このデータは、SLOが達成されているかを判断するための根拠として重要です。もしSLI(例えば25分以内の配達率)が「95%」を下回った場合、配達が遅れた注文の具体的な原因を分析することで、運用上の問題点を明確にできます。例えば特定の時間帯やエリア、配達手段によって遅延が多い場合、それに対応した改善策を講じることが可能です。
また、SLIは単なる記録ではなく、サービスの改善に直接つながるデータです。例えば、配達成功率のデータを継続的にモニタリングすることで、運用の改善が進んでいるかを確認できます。さらに、SLIを複数の指標で測定する(例: 配達成功率、平均配達時間、配達温度の適正率など)ことで、サービスの品質を多面的に把握でき、顧客体験をより向上させるためのヒントを得ることができます。SLIはサービスの現状を「見える化」し、継続的に品質向上を支える重要な役割を担っています。
3.SLA、SLO、SLIが連携して品質管理を実現する流れ
結果をもとに継続的改善を実施
SLIのデータがSLO(目標)を下回っている場合、原因を特定し改善施策を実行します。これにより、SLA(顧客との約束)を守り続ける仕組みが実現します。
例
・配達エリアが広範囲にわたり、一部の遠距離配達が25分以内に間に合わない。
→配達エリアを再定義し、範囲を縮小。遠距離の注文は別店舗に割り振る。
・配達ルートの最適化不足
→地域ごとの渋滞情報をリアルタイムで共有し、配達ルートを柔軟に変更できる仕組みを整備。
このようにSLAを達成できるように継続的改善を行います。
4.これらの連携がSREにおいて重要な理由
4-1.信頼性の向上
SLAを守ることで、顧客にとってサービスの信頼性が高まります。また、SLOを目標に運用を管理し、SLIを測定し続けることで、サービスの品質を継続的に向上させることができます。
4-2. トラブルの早期発見と対応
SLIを定期的にモニタリングすることで、SLOの目標を下回る兆候をいち早く察知できます。これにより、SLAを破る可能性のあるトラブルを未然に防ぐことが可能です。
4-3. 顧客満足度とビジネス成長の両立
SLA、SLO、SLIを活用することで、顧客が求める品質を維持しながら、サービス提供者にとっても効率的な運用が実現します。このバランスが取れることで、顧客満足度が向上し、ビジネスの成長にもつながります。
5.SLA、SLO、SLIの考え方を練習しよう
ピザ配達サービスの事例を通じて基本概念を学びました。それではこの知識を応用して、電車運行サービスにおけるSLA、SLO、SLIを一緒に考えてみましょう。ピザ配達サービスと電車運行サービスの違いに注目しながらどのように適用されるのかを整理していきます。
5-1. 電車運行サービスにおけるSLA
電車の場合、「時間通りに運行されること」 や 「大きな遅延が発生しないこと」 が乗客の期待になると考えられます。この点をふまえ、電車運行サービスにおけるSLAを考えてみましょう。
さて、以下のSLAを考えてみましたが、皆さんはどのようなSLAを考えたでしょうか?
例:電車運行サービスのSLA
(1)平日の通勤ラッシュ時(朝7時~9時)、運行遅延率を5%未満に抑えます。
(2)30分以上の遅延発生率を1%未満に抑えます。
(3)運行中止時、15分以内に代替交通手段を提供し、適用対象の乗客へ電子クーポンを発行する。
考えてみよう①
SLAを設定する際、ピザ配達サービスと電車運行サービスでは、それぞれ何に気をつける必要があるでしょうか?
この2つのサービスでは、顧客の期待や求められる品質保証の内容が異なります。
ピザ配達は個々の顧客に迅速なサービスを提供することが最優先されるのに対し、電車運行は多くの乗客に対する安定した輸送の維持が目的となるため、SLAの性質や補償の内容が大きく異なります。
5-2.電車運行サービスにおけるSLO
SLOは、SLAで約束した基準を守るために、鉄道会社が内部で設定する具体的な目標値です。SLOは、運行管理チームや運転士、システム運営チームが共有する「実現可能で挑戦的な基準」として機能します。皆さんは上記のSLAに対して、どんなSLOを考えますか?
さて、以下のSLOを考えましたが、皆さんはどのようなSLOを考えたでしょうか?
例:電車運行サービスのSLO
(1)平日の通勤ラッシュ時(朝7時~9時)、運行遅延率を3%以下に維持する。
(2)30分以上の遅延発生率を0.5%以下に抑える。
(3)運行中止時、15分以内に振替輸送を提供し、適用対象の乗客へ電子クーポンを発行する。
考えてみよう②
電車運行サービスのSLOでは何を重視して目標を設定することが考えられるでしょうか?候補は様々ありますが、上記の3つのSLOでは何を重視しているのか考えてみましょう。
上から順番に、平日通勤ラッシュ時の定時運行の維持、大規模遅延の抑制、サービス継続性と緊急時対応と考えられます。
5-3. 電車運行サービスにおけるSLI
SLIは、SLOの達成状況を確認するための測定データです。鉄道会社は、運行状況を数値で記録し、どの程度SLOを守れているかを継続的にモニタリングします。これにより、SLAが達成されているかどうかを判断できます。上記のSLOに対しては、以下のSLIが考えられます。
例:電車運行サービスのSLI
(1)通勤ラッシュ時の運行遅延率
例)朝のラッシュ時に200本の電車が運行され、そのうち6本が5分以上遅延
→ 遅延率 = (6 ÷ 200) × 100 = 3.0%(SLO達成)
(2)30分以上の遅延発生率
例)1日1000本の電車のうち、4本が30分以上遅延
→ 遅延発生率 = (4 ÷ 1000) × 100 = 0.4%(SLO達成)
(3)振替輸送手配完了時間
例) 1か月間で3回の運行中止が発生し、対応完了時間が9分・8分・10分
→ 平均 = 9分(SLO達成)
例えば、運行管理システムでは、全電車の出発時刻と到着時刻を記録して、運行遅延率や運行遅延発生率を計測します。このSLIデータを基にどの程度SLOが達成され、結果としてSLAが守られているかを把握できます。
5-4.SLA、SLO、SLIが連携して電車運行を支える仕組み
これらの3つは、それぞれ異なる役割を持ちながらも、緊密に連携して機能します。
・SLA : 乗客に対する明確な約束
・SLO : その約束を守るための内部目標
・SLI : 目標達成状況を確認するための指標
電車運行サービスでは、多くの乗客が予定どおりに移動できるよう、定時運行・大規模遅延の防止・運行中止時の対応 といった要素が求められます。そのために、SLA、SLO、SLIが連携し、運行の品質を維持・向上させる役割を果たします。
ただし、電車の運行においては「安全性」「コスト最適化」など、様々な要素を考慮しながらバランスを取る必要があります。どの指標を重視するかは、サービス内容や提供者の方針によって異なります。
例) 安全性を最優先する場合
→ 遅延よりも、保守・点検の頻度を増やし、安全基準を強化する。
例)コストを最適化する場合
→ 遅延が多少発生しても、運行本数を削減し、効率的な運行を重視する。
このように、SLA、SLO、SLIの設定はサービスの特性によって異なり、それぞれの目的に応じた最適な指標を選ぶことが重要です。
6.まとめ
SLA、SLO、SLIは、サービスの品質を維持し、信頼性を高めるために欠かせない基本概念です。それぞれの役割を正しく理解し活用することで、トラブルを未然に防ぎ顧客の期待を超えるサービスを提供できるようになります。これまで、ピザ配達サービスや電車運行サービスの例を通じて、SLA、SLO、SLIがどのように品質管理に活用されるかを考えてきました。
SREはこれらの概念を土台に、システムやサービスの安定性を高めるアプローチを提供します。ピザ配達サービスや電車運行サービスの事例で考えてきたように、「顧客への信頼」を「数値と目標」に落とし込み、それを「データで実現」する仕組みを作ります。
システム運用に対しSREを導入することで、次のようなメリットを実現できます。
・サービスのトラブル発生率を低下させ、信頼性向上。
・明確な目標とデータ測定に基づく運用の効率化。
・顧客や社内ユーザーからの信頼を得られるシステムの提供。
SLA、SLO、SLIを活用する第一歩として、現在運用しているシステムの「目標(SLO)」と「測定指標(SLI)」を明確にしてみてください。それに基づいて「どんな約束(SLA)を実現するべきか」を考えることで、SREの考え方を実践的に取り入れることができます。
X(旧Twitter)・Facebookで定期的に情報発信しています!
Follow @acceluniverse