SLOとは

SLOは、顧客に対して提供するサービスの品質や可用性に関して、計測可能かつ具体的な目標水準を定めた値や指標のことです。

SLOの概要とSREにおける役割

SLO(Service Level Objective、サービスレベル目標)は、ITサービスの運用において、SLA(Service Level Agreement、サービスレベル合意)を達成するために内部で設定される具体的な数値目標です。

顧客との契約であるSLAには、サービスが満たすべき品質水準が記述されますが、このSLAを確実に遵守し、運用チームがその目標に向かって努力できるようにするために、SLOが定義されます。SLOは、計測可能で客観的な指標であるSLI(Service Level Indicator、サービスレベル指標)に基づいて設定されます。

たとえば、「サービスの月間可用性を99.95%にする」といった目標がSLOに相当します。この目標を達成するために、運用チームは具体的な監視と改善活動を行います。

主な目的は、SLA達成のための運用上の明確なゴールを設定し、顧客体験とサービスの信頼性を高めるために、チームの活動と優先順位を決定する基準を提供することです。

SLI、SLO、SLAの関係性

SLOを理解する上で、SLIとSLAとの関係性は不可欠です。これらは「SLAピラミッド」とも呼ばれ、サービス品質の管理構造を形成します。

項目定義役割
SLI (指標)サービス品質を計測する具体的な数値。例: レイテンシ、エラー率、可用性。サービスの性能を客観的に評価するための「羅針盤」。
SLO (目標)SLIに設定される目標水準。例: 「99%のリクエストのレイテンシを100ms未満にする」。サービス運用チームが目指す「ゴール」。SLAよりも厳しく設定されることが多い。
SLA (合意)顧客との間で交わされる、SLO未達時の罰則や返金を含む契約。例: 「可用性が99.9%を下回った場合、月額料金の10%を返金する」。法的拘束力を持つ「約束」。SLO未達時のリスク管理を行う。
SLI、SLO、SLAの関係性

一般的に、SLOはSLAよりも厳しく(あるいは余裕を持って)設定されます。これは、運用上のバッファ(エラーバジェット)を確保し、顧客に影響が及ぶ前に問題を解決するためです。

SLOの設計とエラーバジェット

効果的なSLOを設定するためには、顧客にとって本当に重要な指標(SLI)を選択する必要があります。不適切なSLOは、チームに無意味な作業を強いることになりかねません。

1. 適切なSLIの選択

代表的なSLIには以下のものがあります。

  • レイテンシ(Latency): リクエストに対する応答速度。
  • スループット(Throughput): 一定時間内に処理できるリクエストの量。
  • エラー率(Error Rate): 失敗したリクエストの割合。
  • 可用性(Availability): サービスが稼働し、利用可能であった時間の割合。
    • 可用性は通常、稼働時間の割合で表され、目標達成度によってサービスの信頼性が評価されます。

2. エラーバジェット(Error Budget)

SLOの概念を運用に落とし込む上で、エラーバジェットは極めて重要な概念です。

  • 定義: SLOで設定された目標水準から、顧客に許容される最大の不具合(エラー)の許容量です。
  • 計算: 可用性のSLOが99.9%である場合、残りの0.1%がエラーバジェットとなります。1か月(約30日間)に換算すると、サービスが停止しても許容される時間は以下のようになります。1ヶ月あたりの総時間×(1−SLO)

\text{Error Budget} = (30 \times 24 \times 60 \text{分}) \times (1 - 0.999) \approx 43.2 \text{分}

  • 役割: この予算を使い切ると、SLOは未達となり、SLA違反のリスクが高まります。エラーバジェットは、運用チームにリスクを取る自由サービスの信頼性維持の責任を与えるための数値的な枠組みとして機能します。予算が残っていれば、新機能のリリースなど、リスクを伴う変更を許容し、予算が少なくなれば、安定性を最優先する、といった判断基準となります。

関連用語

SLI | 今更聞けないIT用語集
レイテンシ | 今更聞けないIT用語集
AIソリューション

お問い合わせ

システム開発・アプリ開発に関するご相談がございましたら、APPSWINGBYまでお気軽にご連絡ください。

APPSWINGBYの

ソリューション

APPSWINGBYのセキュリティサービスについて、詳しくは以下のメニューからお進みください。

システム開発

既存事業のDXによる新規開発、既存業務システムの引継ぎ・機能追加、表計算ソフトによる管理からの卒業等々、様々なWebシステムの開発を行っています。

iOS/Androidアプリ開発

既存事業のDXによるアプリの新規開発から既存アプリの改修・機能追加まで様々なアプリ開発における様々な課題・問題を解決しています。


リファクタリング

他のベンダーが開発したウェブサービスやアプリの不具合改修やソースコードの最適化、また、クラウド移行によってランニングコストが大幅にあがってしまったシステムのリアーキテクチャなどの行っています。