【えすえるおー】

SLO(サービスレベル目標) とは?

💡 サービス品質の「数値目標」
📌 このページのポイント
SLA / SLO / SLI の関係 SLA(サービスレベル契約) 顧客との契約。違反時はペナルティあり SLO(サービスレベル目標) 内部目標。SLAより厳しく設定 SLI(指標) 稼働率 応答速度 具体例 SLI: 現在の稼働率 99.97% SLO: 目標 99.95% SLA: 契約 99.9%
SLOのイメージ
ひよこ ひよこ

SLO、SLISLAの違いが混乱する…

ペンギン先生 ペンギン先生

SLI = 何を測るか(レイテンシ、可用性など)。SLO = SLIの目標値(レイテンシ200ms以内が99%)。SLA = 顧客との契約(SLOを達成できなかったら返金するなど)。料理に例えるとSLI=温度計、SLO=70度以上をキープ、SLA=70度以下だったら代金半額という契約だね

ひよこ ひよこ

SLOはどう決める?

ペンギン先生 ペンギン先生

まずユーザー体験を考えよう。「ページ読み込みが3秒以上だとユーザーが離脱する」→レイテンシSLO=p99で2秒以内。「決済ページのエラーは致命的」→決済APIの可用性SLO=99.99%。重要なのは100%を目指さないこと。100%は不可能だし、99.999%と99.9%のコスト差は10倍以上になるよ

ひよこ ひよこ

SLOが高すぎると問題?

ペンギン先生 ペンギン先生

SLOが高すぎるとエラーバジェットが極小になって、まともにリリースできなくなる。99.999%(年間5分の停止)を維持するには全変更に極めて慎重になる必要がある。ユーザーの期待と開発速度のバランスで決めるのが重要。最初は低めに設定して、段階的に上げていくアプローチがおすすめだよ

ひよこ ひよこ

SLOの運用で大事なことは?

ペンギン先生 ペンギン先生

①SLOダッシュボードをチーム全員が見える場所に置く、②エラーバジェットの消費状況を定期的にレビュー、③SLOに基づいてアラートを設定(バーンレートアラート)、④四半期ごとにSLO値を見直す。SLOは一度決めたら終わりじゃなく、サービスの成長に合わせて進化させるものだよ

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「SLO」って出てきたら「サービス品質の数値目標」と思えればだいたいOK!
📖 おまけ:英語の意味
「Service Level Objective」 = サービスレベル目標
💬 Objective(目標)。SLA(Agreement=契約)の内部目標版だよ
← 用語集にもどる