0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SREノススメ Part 2

Posted at

📘 Site Reliability Engineering 第2章 要約:「サービスの信頼性を測る」徹底解説


✅ この章の目的:信頼性とは「測れる」もの

SREの基本的な考え方の1つに、「信頼性は感覚ではなく数値で語るべきである」という前提があります。
信頼性を“雰囲気”で語ることは運用や開発の意思決定を曖昧にし、エンジニア間やビジネスサイドとの誤解のもとになります。

本章では、SREが信頼性をどう定量的に定義し、測定し、運用に活かすかを、3つのキーワードで解説します:

  • SLI(Service Level Indicator)
  • SLO(Service Level Objective)
  • SLA(Service Level Agreement)

📏 用語の定義と関係性

🔹 SLI:Service Level Indicator(サービス指標)

  • 実際のサービス状態を表す定量的なメトリクス
  • 例:リクエスト成功率、レスポンスのP95/P99レイテンシ、エラー率、スループットなど
  • SLIの選定は、ユーザーの体験に直結する指標かどうかが最重要

🔸 SLO:Service Level Objective(サービス目標)

  • SLIに基づく「内部向けの目標値」
  • 通常は99.9%や95%といった可用性目標など
  • ユーザーとの契約ではないが、運用ポリシーやリリース判断に使う基準

🟥 SLA:Service Level Agreement(サービス契約)

  • 顧客(社外)と結ぶ正式な契約。違反時はペナルティが発生する可能性もある。
  • 通常、SLOよりやや緩めに設定される。
🔁 関係性:SLI(実測値)→ SLO(内部目標)→ SLA(契約)

🧪 SLIの具体例

指標カテゴリ
可用性 成功レスポンスの割合(HTTP 2xx/3xx)
レイテンシ P95/P99の応答時間
正確性 コンテンツの誤り率、同期ズレ発生率
スループット 処理件数、リクエスト数
フレッシュネス データが最新である割合(キャッシュ、レポート等)

✅ 重要な観点:「ブラックボックス vs ホワイトボックス」

  • ブラックボックス監視:ユーザーの視点から見たシステムの結果(例:curlでの死活監視)
  • ホワイトボックス監視:内部メトリクス(例:gRPCのエラーレート、DBクエリ失敗数など)

image.png


🎯 SLOが必要な理由:妥当な信頼性のゴールを定める

SLOを設定することで、以下のような組織的判断が可能になります:

  1. 信頼性に問題があるかどうかを定量的に判断できる
  2. アラートの正当性を評価できる(ノイズの排除)
  3. 機能リリース vs 安定運用のトレードオフ判断の基準になる

SLOは「何が正常か?」という合意形成の出発点でもあります。


📉 アラート設計の誤りと、SLOに基づく改善

❌ よくある誤り

  • CPU使用率80%を超えたらアラート
  • ディスク使用率が90%超でエスカレーション

これらはシステムの状態を監視しているだけで、ユーザー影響を直接反映していません。

✅ SRE的な設計

  • 「HTTP 5xxが10%超過」など、SLO違反と連動したアラート
  • 「ユーザーに影響を与えるメトリクスに基づく通知」が重要

アラートは“夜中に起きる価値がある”イベントかどうかで精査するべきです。

image.png


💡 実務での導入ステップ(SLI/SLO)

  1. 現状モニタリングしている項目をリストアップする
  2. ユーザー影響に直結する項目だけをSLI候補として残す
  3. 現状の数値分布(成功率、P99レイテンシ)を確認する
  4. SLOを仮設定し、しばらく様子を見る(例:可用性99.9%)
  5. アラートポリシーをSLOベースにリファクタリングする

image.png

🔚 まとめ:信頼性を“感覚”から“設計対象”へ

この章で得られる最大の学びは、以下のように整理できます:

  • ✅ 信頼性は「測れる指標」に落とし込んで初めて議論できる
  • ✅ SLI → SLO → SLAという階層で管理し、役割を分ける
  • ✅ SLOをもとにアラート・運用判断・リリース管理を設計する
  • ✅ チームにとっての「十分に良い信頼性(Good Enough)」を定義するのが第一歩

次章(第3章)では、実際に「良いSLIとは何か?」「SLOをどう設計するのか?」という設計論に踏み込みます。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?