Введение В 2016 году Google выпустил тот самый книга о SRE (Инженерия надежности объекта) .
Такая практика решила важную для компании задачу — поддержание высокой надежности сервисов Google. За прошедшие годы эта практика широко распространилась среди разработчиков по всему миру.
Сегодня во многих стартапах и крупных корпорациях есть должность SRE-инженера.
Вот как с течением времени менялся интерес работодателей к инженерам SRE.
Тенденция поиска инженеров SRE Практика относительно новая, поэтому пока не совсем понятно, что именно должны делать инженеры SRE. Можно, конечно, читать книги или смотреть видео, но полный список должностных обязанностей для них составить не получится.
Мы решили проанализировать 30 вакансий инженеров SRE. от следующих компаний: Google , Гитлаб , Инстакарт , Оракул , Твиттер , Слабый , Коиндеск , Быстро , Реддит , Датадог , Фрейм.
io , Двердеш , Кинбейс , МонгоБД , Патреон , Коробка , Прочь , Адьен , Пинтерест , Фигма , Яблоко , Твилио , Эйрбнб , Квадратное пространство , Робин Гуд , Мастеркард , Спотифай , Пелотон , Дуолинго , ТИК Так Результаты аналитики Мы выделили несколько основных обязанностей:
- Развертывание и обслуживание инфраструктуры (84% объявлений) .
- Определение и контроль SLO, SLI и бюджетов ошибок (34% объявлений) .
- Настройка мониторинга и оповещений (47% объявлений) .
- Обязанности, реагирование на инциденты, вскрытие (47% объявлений) .
- Создание и автоматизация инструментов (56% объявлений) .
Комментарий Евгения Бутырина, технического редактора Slurm В вакансиях российских компаний эти обязанности также присутствуют в той или иной форме.Развертывание и обслуживание инфраструктуры Одной из основных задач инженера SRE является проектирование, построение и обслуживание инфраструктуры, на которой работают продукты и услуги компании.При упоминании обязанностей в процентном отношении все не так прозрачно.
Часто в вакансиях где-то в требованиях пишут: уметь следить.
И в обязанностях нет ни слова, но мы понимаем, что если вам нужно знать, то вам это понадобится.
Та же история с SLO и бюджетом ошибок, будучи одной из основных практик, по умолчанию подразумевает, что это нужно знать и уметь.
А про обязанность можно написать: обеспечивать работоспособность сервисов 24/7.
Это может быть частное облако, но все чаще это публичное облако, такое как AWS или Google Cloud. Сейчас популярно писать инфраструктура как код (IaC) , используя синтаксис YAML и HCL (для продуктов Hashicorp, таких как Terraform).
Чтобы принимать правильные решения об инфраструктуре, инженер SRE должен участвовать в планирование ресурсов для новых и существующих продуктов, включая обсуждения с группами разработчиков и другими инженерами оценок рабочей нагрузки, требований к задержке и т. д. Иногда за это отвечает инженер SRE. согласие инфраструктуры, особенно для соответствия GDPR и SOC2. Наконец, большинство компаний пытаются оптимизировать затраты по инфраструктуре, и этим также должен заниматься SRE. Определение и контроль SLO, SLI и бюджетов ошибок Поддержание надежности производственных систем – важная обязанность инженера SRE. В конце концов, буква R в SRE означает надежность.
Вам необходимо понять, как добиться корректной работы сервиса и соблюдения внутренних стандартов.
Для этого инженер SRE определяет SLO и SLI. СЛО являются индикаторами целевого уровня обслуживания для услуги, а SLI — индикаторами, измеряющими эти уровни.
SLO могут быть определены вместе с коллегами на основе ожиданий клиентов и обязательств перед ними, сформулированных в форме SLA. После определения SLO их можно использовать в качестве основы.
бюджеты ошибок , то есть допустимый период, в течение которого услуга может работать ниже целевого уровня.
В любой системе сбои неизбежны, и SRE и командам разработчиков нужен этот запас в виде бюджетов ошибок.
Бюджет можно использовать для измерения серьезности инцидентов.
Если, например, на инцидент потрачено 30% бюджета, его можно считать серьезным.
Комментарий Павла Селиванова, архитектора облачных решений ВК, спикера Slurm С помощью бюджета вы можете понять, когда нужно поработать над новыми функциями, а когда следует поработать над стабильностью продукта.Настройка мониторинга и оповещений После определения SLO их соответствие можно отслеживать с помощью SLI и мониторинга.
Мониторинг обычно охватывает инфраструктуру (пиковые нагрузки на процессор и память), время безотказной работы службы (веб-сайта или API), производительность (скорость загрузки страниц) и т. д. Вы можете использовать локальные инструменты, такие как Prometheus и Grafana, или популярные SaaS, такие как Datadog и Sentry. Настройка мониторинга и оповещений — это первый шаг.
Необходимо установить адекватные пороги, чтобы в команде не было потока несущественные оповещения .
Оповещения должны быть связаны с конкретными действиями, и о симптомах лучше узнать заранее, чтобы можно было принять меры, а не получать уведомления об уже произошедших сбоях.
Обязанности, реагирование на инциденты, вскрытие Мы настроили мониторинг и получаем оповещения, теперь нам нужно составить график дежурств и распределить обязанности по реагированию между членами команды.
Лучше использовать платформа управления инцидентами чтобы все инциденты и оповещения были собраны в одном месте, и за каждый инцидент должен быть четко определен ответственный сотрудник.
Это поможет вам рассчитать важные показатели, такие как MTTA (среднее время ответа) и MTTR (среднее время восстановления).
Еще одна задача инженера SRE — написать вскрытие, чтобы объяснить внешним и внутренним заинтересованным сторонам, какая цепочка событий привела к инциденту, какие меры были приняты и что было сделано, чтобы предотвратить повторение подобного.
Комментарий Павла Селиванова, архитектора облачных решений ВК, спикера Slurm Прежде всего, задача патологоанатомического исследования — проанализировать произошедшее.Создание и автоматизация инструментов Одним из принципов СР? является устранение ручного труда.Вскрытие позволяет вам учиться на своих ошибках и предотвращать возникновение подобных проблем в будущем.
Google SRE определяет тяжелую работу как ручные, повторяющиеся и нетактические задачи, которые может быть автоматизировано .
Эти задачи отнимают время разработчиков и SRE и мешают другим важным проектам.
Автоматизация повторяющихся задач — одна из важных обязанностей инженера SRE. Это может быть автоматическое реагирование на распространенные оповещения, настройка процесса CI/CD, чтобы помочь команде работать быстрее, или создание продуктов, которые позволяют разработчикам самостоятельно обрабатывать рутинные запросы.
Прочие обязанности В некоторых компаниях инженеры SRE могут выполнять и другие задачи:
- Отладка проблем в производстве .
Может повлиять на все уровни стека.
- Разработка мультиоблачной стратегии.
Поэтому многие компании сейчас пытаются адаптировать свои продукты под разные облачные платформы.
- Хаос-инжиниринг.
Это метод, с помощью которого мы пытаемся сломать систему сложными способами, чтобы проверить ее стабильность.
Евгений Бутырин
Над материалом работала команда курса» SRE: внедрение DevOps от Google «Учебный центр Слёрма не обещает работы, но спикеры могут чему-то научить.Теги: #Карьера в ИТ-индустрии #ИТ-компании #ИТ-компании #DevOps #Удаленная работа #работа #вакансии #sre #перевод #компании
-
3 Способа Остановить Партнерскую Ссылку
19 Oct, 24 -
Жизнь В Googleplex
19 Oct, 24 -
Неожиданная Встреча. Глава 10
19 Oct, 24 -
Отзыв 50 Тысяч Сертификатов Digicert
19 Oct, 24 -
Все, Что Вы Хотели Знать О Sd...
19 Oct, 24 -
Василий И Ночь
19 Oct, 24