SLO サービスレベル目標
エスエルオーサービスレベルモクヒョウ
SLI、SLO、エラーバジェット導入の実践ガイド
- 著者:
- Alex Hidalgo / 山口 能迪 / 成田 昇司(アレックス ヒダルゴ / ヤマグチ ヨシフミ / ナリタ ショウジ)
- 出版社:
- オライリー・ジャパン
- 出版日:
- 2023年07月11日
- ISBN:
- 9784814400348
- 在庫:
- 在庫あり
なぜ注目されているか
書籍紹介
技書の森解説
SLO (サービスレベル目標) を自分のチームで導入したいとき、何から決め、どう計測し、どうやって周りの合意を取るのかを順に追える実務書が『SLO サービスレベル目標』です。原書は Alex Hidalgo の Implementing Service Level Objectives で、日本語版は山口 能迪 氏の監訳、山口 能迪 氏と成田 昇司 氏の訳により、オライリー・ジャパンから 2023 年 7 月 11 日に発行されました。副題は「SLI、SLO、エラーバジェット導入の実践ガイド」です。版元は SLO を、ユーザーの満足度に強い相関があるメトリクスを用いた開発と運用の目安と説明し、本書はその導入に必要な基礎概念、実装、文化を解説すると紹介しています。
開発、実装、文化の 3 部 17 章という構成
目次は 3 部に分かれます。第 I 部「SLO の開発」は 1 章「信頼性スタック」で指標、目標、エラーバジェットの関係を示し、2 章「信頼性についての考え方」、3 章「意味のあるサービスレベル指標の開発」、4 章「適切なサービスレベル目標の選択」、5 章「エラーバジェットの使い方」と、定義から使い方までを積み上げます。第 II 部「SLO の実装」は 6 章「同意の獲得」から始まり、計測、監視とアラート、確率と統計、信頼性を得るためのアーキテクチャ、データの信頼性、適切に機能した例へと進みます。第 III 部「SLO の文化」は文化の構築、SLO の進化、発見可能で理解可能な SLO、SLO の提唱、信頼性のレポートの 5 章です。付録には SLO の定義のテンプレートと、9 章の証明が収められています。
100% を目指さないという判断を数字で支える仕組み
SLA / SLO / SLI の考え方の核は、サービスがどれだけうまく動いているかをユーザーの体験に近い指標で測り、その指標に「ここまで満たせば十分」という目標値を置くことです。目標が 99.9% なら、残りの 0.1% は失敗してよい量として扱えます。この許容量を エラーバジェット と呼び、使い切りそうなら変更を控えて安定化に回り、余裕があれば新機能の投入や実験に使う、という判断の根拠にします。本書の 2 章に「100%は不要である」「信頼性にはコストがかかる」という項目が並んでいるのは、この発想の出発点を示すものと読めます。難しいのは、何を測れば利用者の満足に近づくのかという指標の選び方と、平均値だけでは見えないばらつきの扱いです。3 章と 4 章が指標と目標値の選び方に充てられ、9 章で確率と統計を独立した章として扱い、付録 B に 9 章の証明まで置いている構成からは、目標値を感覚ではなく根拠をもって決める姿勢がうかがえます。11 章ではデータサービスを対象に、データリネージを含むデータの信頼性も取り上げています。
同意の獲得から信頼性のレポートまで、組織に根付かせる章
技術の章と同じ重みで置かれているのが、組織への定着です。6 章「同意の獲得」には「エンジニア仕事はコードだけではない」「主要な利害関係者」「苦労して習得した教訓」という節があり、第 III 部では文化を移行するための戦略、使用方法や依存関係やユーザーの期待の変化に応じた SLO の見直し、クロール、ウォーク、ランの 3 段で進める SLO の提唱、基本と高度に分けた信頼性のレポートが続きます。版元の紹介文も、組織内での同意の獲得や SLO の提唱など、SLO に基づくアプローチをチームや会社全体に根付かせる方法を紹介すると述べています。監視ツールの設定手順を探している読者には遠回りですが、SRE の実践を一つのチームの取り組みで終わらせず、開発や事業の側と同じ数字で話せる状態をつくりたい人には、この後半の章こそが読みどころになります。
障害のたびに「どこまで直せば十分か」で議論が止まるチーム、アラートが多すぎて本当に重要な異常を見落としがちな運用担当、信頼性への投資を事業側に説明する立場のリーダーにとって、指標の定義からレポートまでを 1 冊で通して確かめられる本書は、導入の段取りを組むための手堅い土台になります。まず第 I 部で自分たちのサービスの指標を一つ決め、付録 A のテンプレートに書き出すところから始めてみてください。
言及した記事 (13 件)
SREとDevOpsのおすすめ書籍まとめ
♡ 118devops, SRE二項分布の最尤推定
♡ 8二項分布, 最尤推定, SLOSLO サービスレベル目標とは
♡ 8基礎, SRE, SLA, sli, SLO複雑で大規模な Kubernetes サービスメッシュを現実的に運用する
♡ 8kubernetes, istio, ServiceMesh, BackyardsBookLiveにおけるSLI/SLO策定に向けた取り組み
♡ 7NewRelic, SREInstanaでサービス・レベル目標を監視する方法
♡ 6apm, INSTANA, observability俺的New Relicアウトプットまとめ 2023
♡ 5NewRelic, SREエンジニア体験を守るために、社内開発環境向けの可観測基盤を OSS+Zabbix で構築した話
♡ 2zabbix, grafana, jaeger, opentelemetry, 開発者体験『SLO サービスレベル目標』読書記録
♡ 1sre, 読書, slo【書評】SLO サービスレベル目標 ―SLI、SLO、エラーバジェット導入の実践ガイド
♡ 0SLO, SRE, 監視, observability, 書評
この本に興味がある方におすすめ
関連する本
関連記事
技術書のアウトプット術 - 読んだ本の価値を 10 倍にする方法
技術書を読んだ後のアウトプット方法を負担の少ないものから 5 段階で紹介。アウトプットが記憶の定着を劇的に改善する理由も解説します。
設計 / アーキテクチャ本ガイド - 設計力を上げる技術書の選び方
ソフトウェア設計を学べる技術書をコード / モジュール / システムの 3 レイヤーに分類し、レベルに応じた読む順番の指針を紹介します。
リーダブルコードの次に読む本 - ステップアップの読書ルート
リーダブルコードを読み終えた後、設計力を段階的に高めるための読書ルートと、各レベルで学ぶべきテーマを紹介します。
関連用語
REST 成熟度モデル
Leonard Richardson が定義した REST API の成熟度を 4 段階で評価するモデル
インフラ
システムを動かす土台となる基盤。サーバー / ネットワーク / OS などの総称
CDK
TypeScript や Python などのプログラミング言語で AWS インフラを定義する IaC フレームワーク
フィーチャーフラグ運用
フィーチャーフラグの分類、ライフサイクル管理、削除戦略の実践ガイド
C4 Model
ソフトウェアアーキテクチャを 4 つの抽象レベルで図示するモデル
プロセスとスレッドの違いとは - メモリ空間 / 生成コスト / 通信方法を比較
プロセスとスレッドの違いをメモリ空間 / 生成コスト / 通信方法の 3 軸で比較。Node.js での使い分け、Lambda の実行環境、データ競合とコンテナの PID 1 の落とし穴まで解説