msksgm’s blog

msksgm’s blog

Webエンジニアです。日々の勉強記録、技術書感想、美術観賞感想を投稿します。

「SLO サービスレベル目標」感想

概要

SLO サービスレベル目標を読みました。 感想を書きます。

www.oreilly.co.jp

前提

目的

本書を読んだ背景は以下です。

事前知識

SRE 関連では以下の書籍を読んでいました。

DevOps 関連で言えば以下の書籍を読んでいました。

読了時間

1 人で理解や解釈できるような内容でなかったので、勉強会を開催しました。 勉強回は下表のように全 4 回で計画しました。9 章は統計的な話が主でしたので、読み飛ばしています。 準備に 5 ~ 6 時間かけて、当日の勉強会は 1 ~ 2 時間で行いました。 そのため、合計所要時間は約 7 時間 × 4 回から、およそ 28 時間程度で読み切ったと考えています。

No. 日付
1 2023/08/15 第 Ⅰ 部 1 章~ 5 章
2 2023/08/22 第 Ⅱ 部 6 章~ 8 章
3 2023/08/29 第 Ⅱ 部 10 章 ~ 12 章
4 2023/09/06 第 Ⅲ 部 13 章 ~ 17 章

他には、翻訳者により以下の 2 つの解説動画が上がっていたため、事前に視聴してから読み始めました。

感想

本書は SLO という名前の通り、重要性、実践方法、文化の醸成方法といった部分に触れられており、SLO を学ぶ際には必ず読むべき本だと思いました。 内容としても SRE そのものや SRE の技術用語はほとんどでこないため、SRE の知見がなくても読み通せます。 SRE そのもに興味がない方でも、信頼性を具体的に落とし込む方法を知りたければ本書をいきなり読んでも読み進められると思いました。 SRE に興味がある方であれば、ほかの本を読みつつ早めに本書を読むことをお勧めします。

信頼性は 2021 年の DORA で追加されたキーメトリクスです。 しかし、「信頼性」の重要性を説いたり説明したりすると直感的でない場合が経験的に多いです。 そのようなときに、信頼性ベースの考え方が重要なのか学んだり、体系化するにはこの本を読むと良いと思いました。

以降、本記事では以下について記述していきます。

  • 章ごとの大まかな印象
  • 特に良かった部分
  • 読むのが難しかった部分
  • 本書を踏まえて実践すること

章ごとの大まかな印象

章ごとの大まかな印象をまとめると下表の通りになります。

印象
第 Ⅰ 部 1 章~ 5 章 入門 SLO といった内容。なぜ重要で導入したらどうなるのかや、基本的な用語を押さえている
第 Ⅱ 部 6 章~ 8 章 SLO 導入のためにステークホルダーの説得、SLO の計測・計算方法、SLO の実装方法とエラーバジェットポリシー、エラーバジェットをによるアラート
第 Ⅱ 部 10 章 ~ 12 章 ハードウェアの SLO 、データ指向アプリケーションの考え方、ユーザージャーニーから考える SLO
第 Ⅲ 部 13 章 ~ 17 章 SLO 文化の作り方、SLO の初期導入、変更、運用、進化

第 Ⅰ 部 1 章~ 5 章が入門 SLO、第 Ⅱ 部 6 章~ 8 章で SLO の具体的な導入方法からアラートまでとなっています。 自身が SLO 初心者のため、8 章の間に学ぶ部分が非常に多かったです。 特に最終的に SLO をもとにしたアラートを作成できればステークホルダー全員が納得したアラート通知を作成できることが印象に残りました。
第 Ⅱ 部 10 章~ 12 章はより複雑なものを取り扱う SLO の内容となっています。 10 章、11 章に対しての知見が浅く難易度も高かったため、ほとんど読み飛ばしてしまいました。 一方で、 12 章のユーザージャーニーから考える SLO は非常に共感し、SLO という言葉を利用しなくても考えるべき内容だと思いました。
第 Ⅲ 部 13 章 ~ 17 章は文化的な側面です。 具体的には、SLO 文化にする方法を解説している章です。 導入の How To だけでなく、どのように導入や運用していくのかについて詳細に解説されています。 SLO の理想的な文化づくりですが、SLO に限らず非常に難しい部分だとも思いました。

特に良かった部分

特に良かった部分は 3 つあります。
1 つめは、本書全体を通してメリットや計算方法だけでなく文化としてどのように設定し、浸透・進化させていくのかといった、包括的でチームによりそった内容であることです。 SRE は SLO の用語の 1 つですが、本書では SRE についてはほとんど出てきません。 SRE の事前知識がなくても読めるため、信頼性に興味があれば読むハードルが低いため、さまざまな人にお勧めします。
2 つめは、SLO を踏まえたアラートについてです。 最初は「SLO のアラートが本番システムの管理において最も将来性のある開発対象の1つです」という文言に疑問を持ちました。 しかし、アラートまで考えられたら、ステークホルダー全員が納得するアラート運用を可能にすると考えなすと非常に納得し、新しい視座を得られました。
3 つめは、12 章のユーザージャーニーから設計する SLO についてです。 本書の例ではきれいにできすぎていますが、大規模なシステムであるほど考えるべき内容だと思いました。

読むのが難しかった部分

個人的に読むのが難しかった部分は以下の 3 つです。 本書の中で特に知見がない部分だったため、読み進められませんでした。 これらの章を読むには、ほかの書籍をあらかじめ読んだほうが良いと思いました。

  • 9 章の具体的な統計
  • 10 章のハードウェアの SLO
  • 11 章のデータ指向アプリケーションの考え方

本書を踏まえて実践すること

本書を読んだ上で、実践したほうが良いことは 3 つあると考えました。
1 つめは、SLO の考え方の導入と改善です。 直近の業務で、SLO に近いものをざっくり算出しました。 今までよりはなんとくなく定量化できたと考えています。 まだまだ、概算ですので今後改善していきます。
2 つめは、業務で利用している、監視・オブザーバビリティツールを学ぶことです。 SLO や信頼性について考えられるようになるには、これらのツールを利用できなければなりません。 以前から個人的な課題ですので、なるべく早く取り組めるようにします。
3 つめは、引き続き SRE の知見を深めることです。 これは現状の勉強内容の継続になります。 具体的には、サイトリライアビリティワークブックで SRE の知見を深めます。

次に関連で勉強すること

関連で勉強することは、引き続き SRE 関連の書籍を読み進めていきます。次に読もうと考えているのは以下の書籍です。

まとめ

SLO サービスレベル目標は、SLO について包括的に 1 冊でまとめられた書籍でした。 信頼性ベースの考え方の重要性から SLO の具体的な導入方法までまとめられているので、サービスの信頼性について興味があるのであれば、本書を読んでみることを非常にお勧めします。