SREやDevOps関連の書籍で個人的に良かったものをまとめてみます。
書籍
SRE サイトリライアビリティエンジニアリング
――Googleの信頼性を支えるエンジニアリングチーム
https://www.oreilly.co.jp/books/9784873117911/
SREといえばまずこちらですね。SREとは何であるかに始まり、エラーバジェットやトイルなどSRE独自の概念について、さらにはGoogleでの具体的な事例などが事細かに書かれています。全てのSREは必ず読みましょう。Webで無料版が公開されていますので、英語ができる人はそちらでも良いかもしれません。
https://landing.google.com/sre/sre-book/toc/index.html
サイトリライアビリティワークブック ―SREの実践方法
https://www.oreilly.co.jp/books/9784873119137/
SRE本は確かに有益だけど実際の現場にどう適用したらいいのか、という声に応えてより実践的なプラクティスを集めたのがこの本です。プラクティカルな内容を盛り込みつつも、改めてSREやDevOpsについて語られている章もあり、バランスよくまとまっています。
SREの探求
――様々な企業におけるサイトリライアビリティエンジニアリングの導入と実践
https://www.oreilly.co.jp/books/9784873119618/
SRW本に続く、様々な組織のSREの実践集です。本自体は分厚いですが、一章一章は短くて読みやすいです。「はじめに」でも書かれているように、SREconのようなカンファレンスの廊下でSREたちの会話を盗み聞きしている気分になれます。熟練のSREにとってはとても刺激的で良い本ですが、いきなり読むと背景が伝わりづらいと思うので、上の2冊を読んでから履修することをおすすめします。
SREをはじめよう ―個人と組織による信頼性獲得への第一歩
https://www.oreilly.co.jp/books/9784814400904/
「SREの探求」の著者がSREのはじめかたにフォーカスしたのがこの本であり、上記をSRE三部作とするなら四作目に当たります。タイトルからは最初に読むべき本のような印象を受けますが、基本的なところが省略されていたりコラムや脚注が多い点から、順番通り四番目に読むことをおすすめします。逆説的ですが、四番目に読むには学びが多い本でした。
セキュアで信頼性のあるシステム構築 ―Google SREが考える安全なシステムの設計、実装、保守
https://www.oreilly.co.jp/books/9784814400256/
Google SREシリーズの第3弾が、この「セキュアで信頼性のあるシステム構築」です。内容的に信頼性よりセキュリティにだいぶ寄っているため、純粋にSREについて知りたい人は他の本から手に取ったほうが良いかもしれませんが、それはそれとして良書です。
SLO サービスレベル目標 ―SLI、SLO、エラーバジェット導入の実践ガイド
https://www.oreilly.co.jp/books/9784814400348/
SLO(サービスレベル目標)やエラーバジェットの概念、及び具体的な実践方法について詳細に書かれた本です。よくある悩みポイントであるエラーバジェットを消費してしまった時の必要リリース問題について、解凍税などの興味深いアプローチが紹介されています。途中で数学的なアプローチがあったりと、様々な視点から改めてSLOについて考えさせられる本でした。
データベースリライアビリティエンジニアリング
―回復力のあるデータベースシステムの設計と運用
https://www.oreilly.co.jp/books/9784873119403/
今の時代はデータベースもリライアビリティが重要であると説いている本です。SRE本を読んでから読むとより理解が深まりますが、これだけ読んでも十分読み応えがあります。
Infrastructure as Code
――クラウドにおけるサーバ管理の原則とプラクティス
https://www.oreilly.co.jp/books/9784873117966/
インフラのコード化はSREでもDevOpsでも重要なポイントです。全体的に丁寧に書かれており良書でした。
Effective DevOps
――4本柱による持続可能な組織文化の育て方
https://www.oreilly.co.jp/books/9784873118352/
DevOpsを支える4本柱である「コラボレーション」、「アフィニティ」、「ツール」、「スケーリング」について書かれています。技術的な話というよりは、いかにして文化を作るかという話が中心になっています。本書を読むとDevOpsの本質はコラボレーションでありアフィニティなのだということがよくわかります。
継続的デリバリー 信頼できるソフトウェアリリースのためのビルド・テスト・デプロイメントの自動化
https://www.amazon.co.jp/dp/4048707876
今では当たり前のように行われている自動ビルドやテスト、継続的デプロイメントについて書かれています。DevOpsのツール的側面を知りたければご一読をおすすめします。
The DevOps 逆転だ!
https://www.amazon.co.jp/dp/4822285359
DevOpsを実践することでピンチをチャンスに変えていくストーリーが、小気味よい小説形式で書かれています。原題は「The Phoenix Project」、日本語タイトルはやや意訳されています。あー、あるあるというか、私は前半部分は涙なしには読めませんでした…。
The DevOps ハンドブック 理論・原則・実践のすべて
https://www.amazon.co.jp/dp/4822285480
上の「The Phoenix Project」のより具体的な手引書がこの「The DevOps Handbook」です。DevOpsを実践するための3つの道が詳細に書かれています。本書から入っても十分ためになりますが、「The Phoenix Project」を読んでから読むとより楽しいと思います。
The DevOps 勝利をつかめ! 技術的負債を一掃せよ
https://www.amazon.co.jp/dp/4822295966/
Gene Kim氏のDevOps三部作の最後の一つがこの「The Unicorn Project」です。フェニックス・プロジェクトに関わった開発者マキシンの視点で、同じタイムラインで別の物語が展開されています。
LeanとDevOpsの科学[Accelerate] テクノロジーの戦略的活用が組織変革を加速する
https://www.amazon.co.jp/dp/4295004901
LeanとDevOpsについての科学的調査をまとめた本であり、ソフトウェアデリバリのパフォーマンスを改善する効果の高い24のケイパビリティについて書かれています。DevOps以外の文脈でもおすすめされることの多い良書です。
リーンソフトウエア開発~アジャイル開発を実践する22の方法~
https://www.amazon.co.jp/dp/4822281930
製造業で一般的だったリーン思考をソフトウェア開発に適用した画期的な本です。リーンソフトウェア開発は後にDevOpsに大きな影響を与えることになります。良い本なのですが、やや入手が困難なのでネットで買うことをおすすめします。
リーン開発の現場 カンバンによる大規模プロジェクトの運営
https://www.amazon.co.jp/dp/427406932X
上と同様、リーン開発について書かれた本です。実例を踏まえて語られており、参考になります。
Kubernetesで実践するクラウドネイティブDevOps
https://www.oreilly.co.jp/books/9784873119014/
昨今盛り上がっているテクノロジーであるKubernetesについて書かれた本です。あまりDevOpsの話は出てきませんが、クラウド~DevOps~コンテナという一連の流れは確かにその通りであり共感できます。しかしもちろん、Kubernetesを使っていないとDevOpsを実現できないわけではありません。
チームトポロジー 価値あるソフトウェアをすばやく届ける適応型組織設計
https://www.amazon.co.jp/dp/4820729632
コンウェイの法則をベースに考えられたDevOpsトポロジーパターンについて書かれています。ソフトウェアアーキテクチャのアナロジーで組織論が語られており示唆に富んでいます。もしかしたらこれが最先端のDevOpsなのかもしれない…!
システム運用アンチパターン
https://www.oreilly.co.jp/books/9784873119847/
DevOps実践のアンチパターンについて現場のエンジニア向けに書かれた本です。基本的な内容が多いですが、その分よくまとまっているといえます。DevOpsの実践で悩んでいる人はぜひ読んでみてください。
その他の資料
Agile Infrastructure & Operations
http://www.jedi.be/presentations/agile-infrastructure-agile-2008.pdf
DevOpsの発端となったAgile 2008 ConferenceでのPatrick Debois氏の資料です。インフラ運用にアジャイルを導入するという当時としては画期的なスライドでした。
10 deploys per day
Dev & ops cooperation at Flickr
https://www.slideshare.net/jallspaw/10-deploys-per-day-dev-and-ops-cooperation-at-flickr
上のスライドから一年後のO'Relly Velocity ConferenceでJohn Allspaw氏とPaul Hammond氏が行ったプレゼンテーションの資料です。Debois氏はこのプレゼンテーションを見たあと、他の人も同じように考えているという確信を持ち、DevOpsDaysをオーガナイズすることになります。一日に10回デプロイするという側面ばかりがクローズアップされがちですが、タイトルにもあるようにもう一つの重要な本質はDevとOpsのコラボレーションです。
Blameless PostMortems and a Just Culture
https://codeascraft.com/2012/05/22/blameless-postmortems/
非難のないポストモーテムの重要性についてのAllspaw氏の投稿です。翻訳されたものを見つけたので、英語が苦手な人はこちらを読んでみてください。
https://postd.cc/blameless-postmortems/
SREエンタープライズロードマップ
https://static.googleusercontent.com/media/sre.google/ja//static/pdf/jp-enterprise-roadmap-to-sre.pdf
おもに大企業でSREを導入する際のプラクティスが簡潔にわかりやすく記載されています。全体でも60ページ程度なので、上の書籍たちよりはだいぶ気軽に読めると思います(SREの書籍たちは厚くなりがちなので)。