Вы научитесь держать сервис в рамках SLO, когда трафик растёт и зависимости падают: алерты по расходу бюджета ошибок, разбор инцидента по ролям, откат релиза за минуты. Знакомая картина: все поды в Running, а каждый сотый запрос ждёт больше четырёх секунд. Ставить у себя ничего не нужно: решения проверяются в песочнице на настоящих Prometheus, k3d, PostgreSQL, Redis, Kafka и nginx.
Доля 5xx на оформлении заказа выросла с 0,04 % до 3,7 %. При SLO 99,9 % это темп 37×: месячного бюджета хватит на 19,5 часа.
Пятиминутное окно увидело проблему на второй минуте. Часовое дошло до порога только на 23-й, и пейджер зазвонил на 25-й. Пороги вы считаете от бюджета, окна и выдержку for проверяете юнит-тестами promtool на синтетических рядах.
Один сервис, один профиль нагрузки, меняется только предел процессора. С 500m на 150 rps квота CFS кончается раньше периода, и три запроса из четырёх не укладываются в таймаут клиента.
В курсе вы читаете такой прогон как отчёт: ступени нагрузки, колено кривой, ограничитель, доля троттлящихся периодов из cpu.stat. И знаете, почему у колена два повтора дают разный результат.
Linux на уровне процессов, сигналов и сети.
Docker и базовые объекты Kubernetes, kubectl для apply, get и logs.
Чтение кода на Python и Go: задачи пишутся на них, глубокое знание языков не нужно.
SQL на уровне SELECT и JOIN. Опыт дежурств поможет, но не обязателен.
Так начинается break-fix: кластер k3d уже сломан, и чекер прогоняет ваш скрипт на двух поломках разных классов. Угадать один раз не выйдет.
Причин пять: не тот образ, проба готовности смотрит не в тот порт, реплик ноль, селектор сервиса мимо меток, targetPort мимо порта процесса. Класс называете по выводу kubectl -o jsonpath до правки, объект не пересоздаёте.
Шаблон подставил пул на 10 соединений вместо 40. Статическая проверка такой конфиг пропускает. Канарейка под тем же трафиком отвечает с p95 279 мс против 106 мс у базы, и гейт останавливает раскатку.
Этот гейт вы пишете сами: валидация ключей, бюджет таймаутов с ретраями, лимит соединений к базе, вердикт по журналу канарейки. Рядом — флаги-рубильники, миграции expand-contract и правило пяти минут для выбора между откатом и докатом.
DevOps-инженерам и администраторам, которые идут в SRE и хотят мерить надёжность целями, а не ощущением «вроде работает».
Бэкенд-разработчикам, которые дежурят по своим сервисам.
Тимлидам платформенных команд, которым нужны SLO, ротация дежурств и постмортемы как процесс.
Четыре этапа на одном сервисе: слой SLI, алерты по бюджету, выкат с PodDisruptionBudget, break-fix с постмортемом. Каждый этап принимает чекер, а не человек.
Алерты без стража по объёму не пройдут: на сценарии с 0,1 запроса в секунду и половиной ошибок оба алерта загорятся, и promtool вернёт FAILED. Без keep_firing_for быстрый алерт погаснет раньше часового окна.
В постмортеме расход бюджета считается. Четыре минуты полного отказа при 10 запросах в секунду — 2400 неуспешных запросов, или 9,3 % месячного бюджета.
Вы также можете задать любой вопрос по курсу у поддержки t.me/mentorix_support
Модулей: 14, уроков: 65. Задачи с кодом проверяются автоматически.
Стоимость курса: 18990 ₽