【えすあーるいー】

SRE とは?

💡 「信頼性」をエンジニアリングで科学的に管理するアプローチ
📌 このページのポイント
SRE(Site Reliability Engineering) SREの目標:信頼性と開発速度のバランス SLI(指標) SLO(目標) エラーバジェット SLA(合意) 監視・可観測性 メトリクス収集 アラート設定 ダッシュボード 自動化 CI/CD 自動復旧 トイル削減 インシデント管理 オンコール対応 ポストモーテム カオスエンジニアリング ソフトウェアエンジニアリングの手法でシステムの信頼性を高める
SREのイメージ
ひよこ ひよこ

SREってインフラエンジニアと何が違うの?

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

従来のインフラエンジニアは運用の安定を最優先にすることが多かったけど、SREはコードを書いて運用の問題を解決する。「手作業でやっていることを自動化する」ことに力を入れるし、信頼性を数値目標で管理するのが特徴だよ。

ひよこ ひよこ

SLISLOって何?

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

SLIは「サービスレベル指標」で測定できる具体的な数値、例えば「成功したリクエストの割合」「レスポンスタイム」など。SLOはその目標値で「99.9%以上の可用性を維持する」みたいに定める。SLAはそれをユーザーや取引先に約束したもので、破ったら補償があることが多いよ。

ひよこ ひよこ

エラーバジェットって何に使うの?

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

「99.9%のSLOがあれば月に43分間のダウンタイムが許される」という計算ができるんだ。この「使えるダウンタイム枠」がエラーバジェット。バジェットが余っていれば積極的にリリースして、使い切りそうなら慎重にする。リリース速度と信頼性のバランスをデータで議論するための共通言語になるよ。

ひよこ ひよこ

ポストモーテムって何?障害が起きたとき犯人を探すやつ?

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

全然違うんだ。SREのポストモーテムは「blameless(責任を責めない)」が基本原則で、誰が悪かったかではなく「なぜシステムがそういう状態になったか」の根本原因を分析するんだ。人を責めるより「なぜそのオペレーションが可能だったか・なぜ検知できなかったか」という仕組みの問題を見つけて再発を防ぐ。この文化が組織に根付いていないと、エンジニアが正直に障害の詳細を書けなくなって、本当の改善につながらないんだよ。

ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「SRE」って出てきたら「信頼性SLOエラーバジェットで数値管理するGoogleが作ったインフラ運用のエンジニアリング手法だな」と思えばだいたいOK!
📖 おまけ:英語の意味
「SRE(Site Reliability Engineering)」 = サイト信頼性エンジニアリング
💬 Googleが2003年頃に始めた職種・手法で、ベン・スロスが「SRE本」(O'Reilly)でまとめてIT業界に広まったよ
← 用語集にもどる