
0. Как стать специалистом по DevOps
- Программа
- Навыки
- Инфраструктура
- Команда курса
- Нагрузка
- Входной тест
- Знакомство с курсом. Узнаете больше о том, какие навыки вы здесь получите
- Железо и облако. Посмотрите на инфраструктуру, в которой вам предстоит работать
- Нагрузка на курсе. Поймёте, сколько времени будет занимать прохождение курса
- Входной тест. Ещё до покупки проверите, подходит ли вам курс
- Делегирование
- Командные встречи
- Мотивация
- Типы коммуникации
- Roadmap
- Jenkins
- Feature Branch Workflow
- Gitea
- Maven
Разберётесь, как устроена разработка ПО в наши дни, и сделаете первые шаги, чтобы ускорить этот процесс
• Системы контроля версий
Узнаете, почему все выбирают Git, как организовать командную работу с помощью Feature Branch Workflow
и хранение Git‑репозиториев в Gitea
• Бережливое производство
Узнаете основы концепции бережливого производства и поймёте, как они перекладываются на IT‑процессы
• Автоматизация сборки
Узнаете, какие есть инструменты для автоматизации повторяющихся задач и фреймворки для сборки проекта
Организуете работу с ветками в Git, соберёте проект с помощью Maven, а также настроите пайплайн в Jenkins
2. Гибкие методологии и Continuous Integration. 9 уроков・2 недели
- GitLab CI
- SonarQube
- Gitlab SAST
- Jenkins Declarative Pipeline
Узнаете, что такое функциональные колодцы и нисходящая спираль
• Гибкие методологии и DevOps-культура
Познакомитесь с 3 путями DevOps: циклом поставки ценности, петлёй обратной связи, экспериментами и обучением
• Continuous Integration
Поймёте, как организовать хранение кода, сборку и тестирование, а также как быстро получать обратную связь
• Серверы Сontinuous Integration
Изучите интерфейс и функциональность GitLab CI, чтобы представить процесс сборки и поставки ПО в виде пайплайна
• Проверка качества и безопасности кода
Встроите в процесс поставки ПО этап анализа кода на безопасность и качество, используя анализаторы кода:
• SonarQube, SonarQube SAST, GitLab SAST
Интегрируете SonarQube в свой проект, добавите в пайплайн этапы анализа качества и безопасности кода, а также напишете Jenkins Declarative Pipeline
3. Сети и основы работы на серверах Linux. 9 уроков・2 недели
- Linux
- LVM
- Сеть
Узнаете, как устроена сеть, и научитесь работать с командной строкой
• Дисковая система Linux
Научитесь работать с разметкой дисков, таблицами разделов и создавать директории, освоите LVM, LSBLK и другие утилиты
• Права пользователя Linux
Сможете управлять использованием ресурсов дисковой системы: выдавать права на файлы, просматривать их принадлежность и выяснять, кто сейчас использует конкретный файл
• Виртуализация
Познакомитесь с популярными гипервизорами, виртуальными машинами и сетями
Попрактикуетесь в работе с сессиями и процессами, а также научитесь назначать права пользователей и управлять ими
4. Continuous Delivery и Continuous Deployment. 10 уроков・2 недели
- GitLab CI
- Value Stream management
- Nexus
- Continuous Delivery
- Delivery Pipeline
- Continuous Deployment
Узнаете, как устроен процесс поставки, и научитесь проводить оценку потребности в частых обновлениях ПО с точки зрения бизнеса
• Системы хранения артефактов
Разберётесь, как публиковать артефакты сборки проекта в хранилище Nexus
• Continuous Delivery
Сможете организовать часть деплоя в пайплайне и автоматизировать её, используя инструменты GitLab CI
• Методология Twelve‑Factor App
Познакомитесь с правилами (факторами), по которым строятся приложения, научитесь применять их в реальных условиях
• Бэкапирование
Поймёте, как организовывать резервное копирование, и узнаете, какие есть виды и ротации бэкапов
Спроектируете процесс поставки, добавите в пайплайн части с установкой на тестовую среду и научитесь откатывать приложение на прошлую версию с помощью GitLab
5. Infrastructure as Code и системы управления конфигурацией. 7 уроков・2 недели
- IaC
- Terraform
- Ansible
Научитесь описывать инфраструктуру кодом и перенимать опыт разработки
• Системы управления конфигурацией
Узнаете, как работает Ansible, и научитесь писать код для управления конфигурацией
Научитесь управлять инфраструктурой и конфигурацией через Terraform и Ansible
6. DBOps: реляционные и нереляционные базы данных. 7 уроков・2 недели
- PostgreSQL
- Принципы DBOps
- Flyway
- MongoDB
Узнаете, что такое реляционные базы данных, какие есть основные SQL‑запросы и как ускорить их выполнение
• Организация высокой доступности БД
Познакомитесь с принципами DBOps и научитесь применять миграции с помощью Flyway
• Нереляционные БД
Научитесь редактировать и добавлять объекты в MongoDB, а также освоите полезные трюки для обращения с коллекциями объектов
Научитесь применять подход DBOps, подключите PostgreSQL и MongoDB к своему приложению, настроите автомиграцию
7. Docker-контейнеризация и хранение данных. 8 уроков・2 недели
- Docker
- S3
- MinIO
- Vault
Обзор Linux- и Docker‑контейнеров. Подробно изучите устройство Docker: слои, образы, контейнеры, Docker‑файл, Registry. Узнаете, какие есть альтернативы у Docker.
• Хранения данных
Научитесь принципам работы объектных хранилищ на примере S3 и MinIO, а также правильному и безопасному хранению файлов. Поймёте, как распознавать отличия между блочными устройствами и объектными хранилищами. Сможете разбираться в файловых системах для блочных устройств.
• Хранение и передача чувствительных данных
Поймёте, как работают системы хранения секретов на примере сервиса HashiCorp Vault. И «подружите» с ним ваше приложение.
Контейнеризируете приложение, научитесь его версионировать и публиковать в Container Registry
8. Микросервисы, балансировка и кеширование. 7 уроков・2 недели
- Docker-compose
- Nginx
Научитесь организовывать высоконагруженную систему, используя инструменты балансировки и кеширования
• Микросервисы
Узнаете, какие есть подходы к организации архитектуры приложения, и познакомитесь с инструментами управления микросервисными приложениями на примере Docker-compose
• Стратегии развёртывания и их выбор
Разберётесь, какие пользователи бывают, что такое сине‑зелёный и канареечный деплой
Интегрируете балансировщик нагрузки и масштабируете приложение
9. Kubernetes. Деплой и обеспечение надёжности приложения. 18 уроков・5 недель
- Kubernetes
- GitLab
- Argo CD
- GitOps
- Helm
Узнаете, для чего нужны системы оркестрации и какие они бывают.
• Запуск Kubernetes кластера
Познакомитесь с 5 основными способами установки и запуска Kubernetes, а также разберёте простые команды kubectl.
• Архитектура Kubernetes
Разберётесь в основных компонентах и их взаимодействии: sheduler, kubelet, kube-proxy, controller manager, etcd и api-сервер.
• Основные сущности Kubernetes
Научитесь работать с базовыми абстракциями Kubernetes.
• Продвинутые сущности
Изучите основные контроллеры Kubernetes, продвинутые паттерны и подходы.
• Продвинутая работа с утилитой kubectl
Выучите дополнительные команды kubectl, флаги, представление сущностей Kubernetes в виде YAML- или JSON/YAML‑файлов.
• Деплой приложений в Kubernetes
Разберёте, как деплоить приложения.
• Стратегия деплоя
Изучите связь Kubernetes и Twelve‑Factor App. Узнаете, как реализовать стратегии деплоя в Kubernetes.
• На пути к GitOps
Автоматизируете процесс развёртывания и управления приложениями с помощью принципов версионного контроля и непрерывной поставки. Познакомитесь с Argo CD через деплой приложения.
• Работа с пакетным менеджером Helm
С помощью Helm-чартов научитесь управлять развёртыванием, конфигурацией и обновлением приложений в Kubernetes.
• Работа с облачными сервисами
Узнаете, что такое облачные вычисления, сервисы и провайдеры. Разберётесь, какие существуют варианты деплоя облаков и какой лучше использовать. Познакомитесь с краткой историей появления облаков.
Поработаете с Minikube, подготовите манифесты Kubernetes для деплоя в кластер Kubernetes и push в репозиторий
• GitLab. Научитесь организовывать поставку приложений с помощью Flux и Argo CD
10. Логирование и мониторинг ошибок. 10 уроков・2 недели
- Loki
- C.A.L.M.S.
- Prometheus
- Grafana
- Alertmanager
Научитесь собирать и анализировать логи с помощью Loki.
• Мониторинг
Изучите типы метрик и типовые аномалии. Разберётесь, что такое SLA, SLO и SLI. Сможете организовать мониторинг с помощью GAP‑стека (Grafana, Alertmanager, Prometheus).
• Алертинг
Узнаете, как настроить алерты в Grafana и подготовить к работе Prometheus Alertmanager. Поймёте, как выбрать метрики, для которых нужно настраивать алерты.
• C.A.L.M.S.
Узнаете, как работают на практике принципы фреймворка C.A.L.M.S., и вспомните всё, что происходило с вами на протяжении курса.
Интегрируете мониторинг и алертинг, научитесь обрабатывать логи в своём проекте
11. Итоговый проект. Самостоятельно・3 недели
Вам предстоит подготовить инфраструктуру и настроить конвейер деплоя: системы автоматической сборки, тестирования и проверки кода на ошибки и уязвимости. Вы выстроите логику развёртывания приложения для разных окружений, настроите системы для мониторинга и логирования приложения.