監視・オブザーバビリティ

SLI・SLO・エラーバジェット えすえるあい・えすえるおー・えらーばじぇっと

SLISLOSLAエラーバジェットSRE可用性
SLI・SLO・エラーバジェットについて教えて

簡単に言うとこんな感じ!

SLIは「可用性99.9%」みたいな実際の測定値、SLOは「99.9%以上を目標にしよう」という目標値。エラーバジェットは「今月あと何時間だけ落ちていいか」という許容残量だよ。この3つでチームが「開発スピード」と「安定性」をバランスよく管理できるんだ。


SLI・SLO・エラーバジェットとは

SLI(Service Level Indicator、サービスレベル指標)とは、サービスの信頼性を定量的に測る指標です。代表例は「正常に処理されたリクエストの割合(可用性)」「リクエストの95パーセンタイル応答時間(レイテンシ)」などです。

SLO(Service Level Objective、サービスレベル目標)とは、SLIに対して設定する目標値です。「過去28日間で可用性99.9%以上を維持する」といった形で定義します。外部に公開するSLA(Service Level Agreement)が契約上の合意であるのに対し、SLOは内部目標として設定します。SLAより厳しい値をSLOにすることで、SLA違反を未然に防ぐバッファを設けます。

エラーバジェット(Error Budget)とは、SLOから許容される「失敗の予算」です。SLO 99.9%であれば、月間の0.1%(約43分)がエラーバジェットです。バジェットが余っていれば積極的に新機能をリリースし、バジェットが枯渇に近づけばリリースを一時停止して信頼性改善に集中するというトレードオフ管理に使います。


SLI・SLO・SLA・エラーバジェットの関係

用語定義
SLI実際に計測するメトリクス成功リクエスト率 = 99.95%
SLO内部で目指す目標値成功リクエスト率 ≥ 99.9%
SLA顧客との契約上の保証値成功リクエスト率 ≥ 99.5%
エラーバジェットSLOから計算される許容失敗量月間 43.2分のダウンタイム

主なSLI候補

カテゴリSLI例
可用性成功レスポンス率(5xx以外の割合)
レイテンシP95・P99応答時間
スループット秒間リクエスト処理数
エラー率エラーレスポンスの割合
鮮度データの最終更新からの経過時間

歴史と背景

  • 2003年:GoogleがSRE(Site Reliability Engineering)チームを設立。SLO概念の原点
  • 2016年:Google SRE本でSLI・SLO・エラーバジェットの概念が一般に公開
  • 2018年The Site Reliability Workbookでより実践的な事例が紹介
  • 2019年〜:GCP・AWS・Azureがクラウド上のSLO管理ツールを提供開始

エラーバジェット管理のイメージ

エラーバジェット管理フロー バジェット残量 多 積極的にリリース バジェット残量 少 慎重にリリース バジェット枯渇 リリース一時停止 エラーバジェット計算例(SLO 99.9%) 月間(30日)の場合 約 43.2 分 週間(7日)の場合 約 10.1 分

関連する規格・RFC

資料内容
Google SRE Book(2016)SLI・SLO・エラーバジェットの概念の原典
The Site Reliability Workbook(2018)SLO実践の詳細ガイド

関連用語