総論→各論→演習とステップアップ。『SREをはじめよう』翻訳者が推薦する、SREへの理解を深める4冊

2024年12月10日

SRE書籍翻訳者

山口 能迪

アマゾンウェブサービスジャパン合同会社シニアデベロッパーアドボケイト。AWS製品の普及と技術支援を担当し、特にオブザーバビリティ、SRE、DevOpsといった領域を担当。OpenTelemetryやGoのコミュニティの支援も活発に行っている。『SREをはじめよう』『効率的なGo』『SLO サービスレベル目標』『オブザーバビリティ・エンジニアリング』『Go言語による並行処理』翻訳、『SREの探求』監訳をはじめ、技術書の翻訳に多数関わる。好きなプログラミング言語の傾向は、実用指向で標準の必要十分に重きを置くもので、特にGoやPythonを好んでいる。
X: @ymotongpoo
GitHub: @ymotongpoo

書籍リスト
  1. 1. 『SREをはじめよう―個人と組織による信頼性獲得への第一歩』David N. Blank-Edelman 著、山口能迪 翻訳
  2. 2. 『SRE サイトリライアビリティエンジニアリング―Googleの信頼性を支えるエンジニアリングチーム』Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy 編、澤田武男、関根達夫、細川一茂、矢吹大輔 監訳、Sky株式会社 玉川竜司 翻訳
  3. 3. 『SREの探求―様々な企業におけるサイトリライアビリティエンジニアリングの導入と実践』David N. Blank-Edelman 編、山口能迪 監訳、渡邉了介 翻訳
  4. 4. 『サイトリライアビリティワークブック―SREの実践方法』Betsy Beyer、Niall Richard Murphy、David K. Rensin、Kent Kawahara、Stephen Thorne 編、澤田武男、関根達夫、細川一茂、矢吹大輔 監訳、玉川竜司 翻訳

みなさん、こんにちは。趣味として技術書の翻訳を行っている山口能迪(よしふみ)と申します。

今回、ご縁があり「SREへの理解を深める4冊」というテーマで、SREをこれから学ぶ方、さらには実践していく方向けにおすすめの技術書を紹介することになりました。SREはここ数年で広く知られるようになったシステムの開発運用手法ですが、関わる領域が広いことに加え、体系立った理解が得難い分野でもありました。

そもそもSREを初めて知ったという読者の方に、SREとは何かを簡単に紹介します。サイトリライアビリティエンジニアリング(SRE)は2000年代中期よりGoogleによって取り組みが始まった、システムの開発運用手法ですが、いまやGoogleにとどまらず、多くの企業で実践されていますサイトリライアビリティエンジニアリングの定義は、次のようなものになります。

サイトリライアビリティエンジニアリングは、組織がシステム、サービス、製品に おいて適切なレベルの信頼性を持続的に達成できるよう支援することを目的とし た工学分野です。(『SREをはじめよう―個人と組織による信頼性獲得への第一歩』より引用)

「リライアビリティ(信頼性)」を「適切なレベル」で「持続的」に達成できるようにすることを目的とした「工学分野」という聞き慣れない組み合わせの定義ですが、この定義から多くのプラクティスが導かれます。

本記事では、この定義からさまざまなプラクティスがどのように派生するのかを理解し、そして具体的にどのような実践が行われているかを知るため書籍をご紹介します。

SREを総論として理解する

SREを企業一般が実践していくために体系だった総論として、理解を深められる書籍としておすすめするのが、今年10月上旬に発売した『SREをはじめよう』です。

▲『SREをはじめよう―個人と組織による信頼性獲得への第一歩』David N. Blank-Edelman 著、山口能迪 翻訳、オライリー・ジャパン

本書は、SREconの創始者であるDavid N. Blank-Edelmanが、長年SREコミュニティに関わった中で、多くの方々からの聞き取りや、多くの事例を調査し整理した結果として体系的にSREについて学べるように書かれた書籍です。

本書は3部構成となっていますが、第1部ではそもそも読者によってその定義の理解が異なっているSREを、その定義から解説し、SREそのものについての理解を正してくれます。冒頭のSREの定義も本書から引用したものです。この定義は元々Googleが提唱したSREの定義に立脚しつつ、より広く一般的に受け入れられやすい形で表現したもので、現実に即したものとなっています。

その第1部を踏まえたうえで、第2部と第3部はそれぞれ個人と組織がSREを実践する主体になるために必要な知識、心構え、プロセスについて解説しています。こうした細かいプラクティス以前の前提知識や前提条件についての広い視点で解説してくれる書籍なのでおすすめしています。

SREの原点に立ち返る

SREが広く普及するに至ったその原点は、通称『SRE本』と呼ばれる『SRE サイトリライアビリティエンジニアリング』です。多くのSREエンジニアにとってはまさに原点であり原典です。

▲『SRE サイトリライアビリティエンジニアリング―Googleの信頼性を支えるエンジニアリングチーム』Betsy Beyer, Chris Jones, Jennifer Petoff, Niall Richard Murphy 編、澤田武男、関根達夫、細川一茂、矢吹大輔 監訳、Sky株式会社 玉川竜司 翻訳、オライリー・ジャパン

『SREをはじめよう』で前提条件やその展開の方法について俯瞰的な視点を得られたら、その次の段階としてSREを提唱したGoogleではどのようなプラクティスが取り組まれているのかを知るのが良いでしょう。本書では先のSREの定義から導かれるであろういくつかの原則を紹介し、その原則を実際のシステム運用に適用するための具体的な施策を多く紹介しています。

たとえば、先の定義にあるように、信頼性を適切なレベルで持続的に達成するためには、信頼性を定義する必要があります。それを工学的なアプローチで行うということは、信頼性を数値化し、計測可能にするということです。これがSREにオブザーバビリティが必要な理由の1つとなります。システムを利用する人やモノが期待する「信頼性」を計測し、そしてその期待値はどこにあるのかを設定するのが「サービスレベル目標(SLO)」です。

さらにそのレベルが決まれば、その期待値を損なわないように運用を行います。その期待値さえ損なわなければ、運用担当者は開発者にデプロイの機会を多く与えたり、新しい運用手法を試したりと、積極的な開発と運用ができるようになるわけです。そして、その期待値が脅かされているかどうかだけのアラート戦略を考えられるようになります。

細かいようですが、先のSREの定義から導かれる原則が、1つ1つの細かなプラクティスにつながっているわけです。本書の発売当初から細かなプラクティスの内容は少し変わっているところもありますが、ある瞬間における1つのSRE実践の解を知れることは、とても刺激になると思います。

Google以外でのSREの実践を知る

SREに対する批判の1つとして、体制の整った大企業でないと行えない、というものがあります。私はそうは思っていないのですが、一部ではその考えが共有されています。そんな方々におすすめしたいのが『SREの探求』です。

▲『SREの探求―様々な企業におけるサイトリライアビリティエンジニアリングの導入と実践』David N. Blank-Edelman 編、山口能迪 監訳、渡邉了介 翻訳、オライリー・ジャパン

本書は『SREをはじめよう』の著者、David Blank-Edelman氏が多くのSREを実践している企業に呼びかけて、各企業でSREをどのように実践しているかをまとめたオムニバスです。本書を読むと、SREの原則を実践するための方法は、その組織や会社の文脈に大きく依存し、その文脈にフィットしするSREの実践方法があるということがよくわかります。

みなさんが、先に挙げた2冊の内容を踏まえたうえで本書を読むことで、本書に寄稿している各企業の会社規模とSRE実践の成熟度がよく理解でき、さらにそれらと比較して自分の会社がどのような状況にあるかをより客観的に分析できるようになることでしょう。

SREの理解を深めるために

上記の3冊を読んだあと、SREの実践を始めようと思ったときに一番困るのが、自社のシステムにおいての信頼性の定義とその適切なレベルの設定方法です。いままで経験のない作業になるので、進め方がわからない、さらには進めたとしても正しく設定できているかわからないという不安がつきまといます。

その演習用の書籍として活躍するのが『サイトリライアビリティワークブック』です。

▲『サイトリライアビリティワークブック―SREの実践方法』Betsy Beyer、Niall Richard Murphy、David K. Rensin、Kent Kawahara、Stephen Thorne 編、澤田武男、関根達夫、細川一茂、矢吹大輔 監訳、玉川竜司 翻訳、オライリー・ジャパン

たとえば信頼性の定義とその期待値の設定を行うSLOの策定プロセス、さらにその期待値を下回る前に異常を認識するためのアラートの設定といった、もっとも初歩的かつもっとも習得が難しいプロセスを、本書の2-5章で解説しています。

また第2部「実践」や第3部「プロセス」でもケーススタディを多めに紹介しているので、演習のつもりで自分の組織であったらどのように対応するかを考えながら読み進めることで、上記3冊で得た理解をより実践的なものへと昇華できることでしょう。

おわりに

本記事で紹介した4冊は総論から各論、さらに演習にいたるまでのSREという概念自体を深める書籍でした。しかしながら一方で、プラクティスを実施していくためには、それを支えるさまざまなツールが必要となります。今回挙げた4冊にはそうした内容は含まれていません。

本記事に挙げた4冊を読んだあとは、みなさんのシステムで使われている開発運用系サービスを精査し、それら固有の技術書や解説記事などを参照するのがよいでしょう。結局根底にある考え方さえブレなければツールはなにを使っても良いのです。

本記事をきっかけに、SREについての理解が進むことを願っています。
次回はSREを支えるオブザーバビリティについて学べる書籍を紹介します。

関連記事

人気記事

  • コピーしました

RSS
RSS