Складчина: [Слёрм] SRE онлайн-интенсив 2020 (Иван Круглов, Павел Селиванов)
Ссылка на картинку
На курсе вы будете:
Строить
Сформулируете показатели SLO, SLI, SLA для сайта, состоящего из нескольких
микросервисов, разработаете архитектуру и инфраструктуру, которая их обеспечит,
соберете, протестируете и задеплоите сайт, настроите мониторинг и алертинг.
Ломать
Рассмотрите внутренние и внешние факторы ухудшения SLO: ошибки разработчиков, отказы инфраструктуры, наплыв посетителей, DoS-атаки. Разберетесь в устойчивости, error budget, практике тестирования, управлении прерываниями и операционной
нагрузкой.
Чинить
Организуете работу группы по ликвидации аварии в минимальные сроки: подключение коллег, оповещение интересантов (stakeholders), выстраивание приоритетов. Имитация реальных условий: восстановление работоспособности сервиса в условиях предельно ограниченного времени.
Изучать
Разберете подход к сайту с точки зрения SRE. Проанализируете инциденты (причины возникновения, ход устранения). Примете решение по их дальнейшему предотвращению: улучшить мониторинг, изменить архитектуру, подход к разработке и эксплуатации, регламенты. Автоматизируете процессы.
Требования к участникам:
- Свободное владение Linux;
- Любой язык программирования: уровень Junior;
- GitLab: навыки автоматизации;
- Prometheus: навыки мониторинга;
- Kubernetes: навыки работы в кластере.
Тема №1: Основные принципы и методы SRE
Что нужно чтобы стать SRE?
DevOps vs SRE
Почему разработчики ценят SRE и очень грустят, когда в проекте их нет
SLI, SLO и SLA
Error budget и его роль в SRE
Тема №2: Дизайн распределенных систем
Архитектура и функционал приложения
Non-Abstract Large System Design
Operability / Design for failure
gRPC или REST
Версионирование и обратная совместимость
Тема №3: Как принимают проект SRE
Лучшие практики от SRE
Чек-лист приема проекта
Логирование, метрики, трейсинг
Забираем CI/CD в свои руки
Тема №4: Проектирование и запуск распределенной системы
Обратное проектирование — как работает система?
Согласовываем SLI и SLO
Практика capacity planning
Запуск трафика на приложение, наши пользователи начинают им «пользоваться»
Запускаем Prometheus, Grafana, Elastic
Тема №5: Monitoring, Observability and Alerting
Monitoring vs. Observability
Настраиваем мониторинг и алертинг с Prometheus
Практический мониторинг SLI и SLO
Symptoms vs. Causes
Black-Box vs. White-Box Monitoring
Распределенный мониторинг доступности приложений и серверов