Книга

«Site Reliability Engineering. Надёжность и безотказность как в Google», Б. Бейер и др.

КнигаSite Reliability Engineering. Надёжность и безотказность как в GoogleБ. Бейер, К. Джоунс, Д. Петофф, Н. Мёрфи

Обложка книги «Site Reliability Engineering. Надёжность и безотказность как в Google»

Одна из важнейших зон ответственности технического руководителя — обеспечение надёжности. Если вы сделали прекрасный, полезный для людей продукт, но ваши серверы лежат — считайте, что продукта нет.

Как технический руководитель, я регулярно обогащаю свои знания в области SRE (даже курс по администрированию кубера проходил). И, конечно, мне интересен опыт одной из крупнейших технологических компаний мира, работающей с колоссальными нагрузками и строгими требованиями к надёжности — Google.

О чём книга

Книга представляет собой сборник статей и транскрипций выступлений на тему надёжности от инженеров из Google. Для удобства читателя они разбиты на четыре раздела: введение в SRE, принципы, практики и управление.

В книге раскрываются следующие темы:

  • Как организована работа SRE-команд в Google
  • Процесс дежурств и всё, что с ними связано
  • Как справляться с критическими ситуациями
  • Почему SRE должны заниматься разработкой
  • Как строить эффективные команды SRE

3 идеи из книги

  1. “Скучность” ПО является его достоинством. Вряд ли кто-то захочет работать в среде, где программа может вести себя как попало. Чем более предсказуемы наши системы — тем лучше всем вокруг.

  2. Упреждающий подход к авариям: SRE-инженеры в Google часто устраивают учебные сбои и ломают собственные системы, чтобы найти несовершенства в процессах мониторинга, алёртинга и устранения сбоев.

  3. RPS — плохая метрика. Разные запросы имеют разные потребности в вычислительных ресурсах. Стоимость запроса может изменяться от целого ряда факторов. RPS однозначно стоит использовать для мониторинга нагрузки, но этот показатель не должен быть единственным.

Мои впечатления

Ощущения остались смешанные. Начну с плюсов: в книге есть много практик, которые актуальны и полезны до сих пор. В частности, могу выделить главы о том, как организовывать грамотный мониторинг, про процесс дежурств и про тестирование. Они более чем актуальны на сегодняшний день. Также очень хорош раздел про эффективное управление командами SRE и онбординг инженеров.

Но некоторые главы читать невыносимо скучно, а часть я вообще пропустил. В частности, тяжело читать главы про собственные решения Google, которые во многом применимы только у них — в голове постоянно приходится держать контекст и разбираться, что делает та или иная система.

Также нужно понимать, что книга старенькая, и многие рекомендации морально устарели. Тем не менее, она будет полезна руководителям, которые выстраивают процесс работы с надёжностью у себя в командах.

В целом, книга достаточно хороша, чтобы погрузиться в проблему построения надёжных, отказоустойчивых систем и организовать базовую работу команды SRE. Это скорее инженерная философия Google, чем учебник. Рекомендую читать главы выборочно — всё подряд читать не стоит.