SLO【Service Level Objective】サービスレベル目標
SLOとは?

サービス品質を測る具体的な指標を「SLI」(Service Level Indicator)という。システムの稼働率、リクエストの成功率、APIの応答速度などが該当する。SLOはこのSLIに対して設定する目標値で、「直近30日間のリクエスト成功率を99.5%以上に保つ」「月間稼働率99.9%以上」といった形で表現される。評価基準だけでなく、それを裏付けるシステム構成や運用体制、準拠する標準規格まで具体的に定義される場合もある。
一方、サービス提供者と利用者の間で交わされるサービス品質についての契約を「SLA」(Service Level Agreement)と呼び、目標未達時の返金や補償を伴うことがある。一般にSLOはSLAより厳しい水準で設定され、SLAを遵守するための社内目標として位置づけられることが多い。組織内部の運用指針であるため利用者には開示されないこともある。
SLOを定める意義は、コストと品質のバランスを取ることにある。可用性を99%から99.99%へ引き上げるには相応のコストがかかるが、SLOという基準があることで、「どこまでの品質を目指すか」を組織全体でデータに基づいて判断できる。また、目標を十分に上回る安定性が確保できているなら新機能の開発を優先し、目標を下回りそうであれば安定化を優先する、といった意思決定も可能になる。
SLOと合わせて用いられる考え方に「エラーバジェット」がある。SLOで許容される誤差の余地を指し、成功率99.5%というSLOであれば月間で0.5%分の失敗が許容範囲となる。バジェットが残っている間は積極的な開発・変更を進め、バジェットが枯渇しそうな段階で安定性の確保を優先するといった形で用いられ、運用の指針として機能する。
SLOの設定には、過去の実績データや利用者の期待値をもとに、現実的で測定可能な値を選ぶことが求められる。高すぎる目標は運用負荷を高めてチームを疲弊させ、低すぎる目標は品質低下を見逃す恐れがある。定期的な見直しを重ねながら適切な水準を維持することが、安定したサービス運用の継続につながる。