Перейти к основному содержанию
Учебный Центр РДТЕХ
  • В начало
  • Дополнительно
Русский ‎(ru)‎
Русский ‎(ru)‎ English ‎(en)‎
Вход
Учебный Центр РДТЕХ
В начало
  1. Курсы
  2. DevOps

DevOps

SRE для инфраструктурной команды DBA

  • Учитель: Анна Овсепян
  • Учитель: Владимир Соловьев

SRE для инфраструктурной команды DBA

SRE для инфраструктурной команды DBA

Обучаем SRE-подходу, где объектами управления выступают PostgreSQL, Patroni, etcd, NFS и Ansible/Teamcity
Все примеры, метрики и инциденты из области инфраструктуры БД.

1. Введение в SRE/DRE, DevOps и эксплуатацию инфраструктуры

  • От «DBA-героя, который чинит базу руками ночью» к «Инженеру надежности, который строит систему».
  • Четкое разграничение зон ответственности. DBA-SRE отвечает за доступность, отказоустойчивость, бэкапы и автоматизацию. DBA-SRE не отвечает за бизнес-логику, SQL-запросы приложений и код разработчиков.

2. Надежность сервисов: SLI, SLO, SLA и Error Budgets

  • Расчет цели 99.9% (~43 минуты простоя в месяц) для инфраструктуры БД.
  • Примеры SLI:
  • Доступность кластера (успешность подключения к VIP/HAProxy).
  • Время автоматического failover (Patroni).
  • Отставание репликации (replication lag).
  • Процент успешных бэкапов и restore-тестов.
  • Error Budget: Как использовать бюджет ошибок. Пример: Если из-за деградации NFS мы «сожгли» Error Budget на этой неделе, мы замораживаем плановые минорные обновления PostgreSQL и занимаемся только стабильностью хранилища.

3. Git для работы с инфраструктурой

  • Версионирование конфигураций СУБД.
  • Хранение в Git не только Ansible-кода, но и конфигов postgresql.conf, pg_hba.conf, patroni.yml. Почему ручное изменение конфига на сервере БД — это нарушение SRE-практик.

4. Командная работа и управление изменениями через Git

  • Code Review для инфраструктурных изменений БД.
  • Как безопасно вносить изменения в параметры памяти (shared_buffers) или настройки WAL. Защита продакшен-баз от несанкционированных изменений. Ветвление для тестовых стендов БД.

5. Основы Configuration Management и Infrastructure as Code (IaC)

  • Почему ручное создание реплик и настройка HA — это антипаттерн.
  • Описание инфраструктуры БД (Standalone, Primary/Standby, HA Patroni) в виде кода. Гарантия идентичности сред (dev/stage/prod).

6. Ansible: базовая работа

  • Управление состоянием сервисов БД и ОС.
  • Автоматизация установки пакетов, управление systemd-юнитами (PostgreSQL, Patroni, etcd), настройка пользователей ОС и прав доступа к серверам БД.

7. Организация Ansible-проектов

  • Структура репозитория для команды DBA.
  • Разработка ролей: postgres-install, patroni-config, nfs-mount, pg_probackup, zabbix-agent. Управление inventory для разных сред и кластеров.

8. Ansible для управления реальной инфраструктурой

  • Развертывание Target Architecture в Private Cloud (VMware/OpenStack).
  • Автоматическое создание HA-кластера из 3 нод (2 ноды Postgres+Patroni+etcd + 1 нода witness etcd). Настройка anti-affinity (размещение нод на разных хостах/стойках), подключение клиентов через DNS/VIP/HAProxy. Строгий No-console подход (запрет ручных правок на проде).

9. Продвинутые практики Ansible и устранение рутины (Toil)

  • Автоматизация ежедневных задач DBA.
  • Автоматизация обновления ОС. Создание Self-Service инструментов (например, через UI или API) для разработчиков, чтобы они сами могли поднимать тестовые БД без тикетов в DBA-отдел.

10. Secrets, доступы и безопасность инфраструктуры

  • Безопасное хранение кредов СУБД.
  • Где и как хранить пароли суперпользователей БД, replication-токены, ключи SSH. Интеграция Ansible с хранилищами секретов (например, HashiCorp Vault) для безопасной передачи паролей во время деплоя кластера.

11. Git + Ansible как единый процесс управления изменениями

  • GitOps для баз данных.
  • Жизненный цикл изменения конфига БД: Изменение в Git -> Pull Request -> Review коллегой -> Merge -> Автоматический пайплайн применяет изменение.

12. CI/CD и автоматизация инфраструктурных изменений

  • Использование TeamCity и Bitbucket для инфраструктуры БД.
  • Пайплайны для линтинга Ansible-ролей, автоматического прогона молекулярных тестов (Molecule) для ролей PostgreSQL. Автоматический запуск restore-тестов в песочнице после каждого изменения скриптов бэкапа.

13. Мониторинг, логирование и alerting

  • Zabbix (алерты) и Grafana (дашборды) для инфраструктуры.
  • Отказ от алертов вида «CPU > 90%». Настройка правильных алертов: «потеря кворума etcd», «replication lag > порога», «кол-во ожидающих сессий больше порога», «бэкап pg_probackup не завершился». Логирование событий Patroni/Postgres для расследования split-brain.

14. SRE/DRE-практики при работе с инцидентами и изменениями

  • Реагирование на сбои БД и управление рисками.
  • Матрица эскалации: Sev1 (падение кластера, реакция 5 мин), Sev2 (деградация, реакция 15 мин). Написание Runbooks для типовых аварий. Blameless Postmortem (разбор инцидента без поиска виноватых, с фокусом на системные улучшения). Оценка рисков через CAB (Change Advisory Board) перед сложными работами.

15. Отказоустойчивость, резервирование и восстановление

  • Бэкапы и Chaos Engineering для БД.

16. Итоговая практическая работа

  • Комплексная задача, имитирующая реальную задачу DBA-SRE.



Перейти к курсу

DevOps2 – DevOps: от теории к практике

  • Учитель: Владимир Соловьев

DevOps2 – DevOps: от теории к практике

Программа курса

DevOps2 – DevOps: от теории к практике

 

Продолжительность

36 академических часов

 

Курс предназначен для тех, кто хочет освоить современные практики и инструменты, позволяющие эффективно интегрировать разработку и операционную деятельность в IT.
Участники курса познакомятся с основами DevOps, его философией и принципами, а также изучат ключевые инструменты, такие как Docker, Jenkins и Git.

 

Формат обучения: 
Дистанционно по будням с 19 до 21.30 часа по Мск. 

Аудитория курса:

Курс подходит как для начинающих специалистов в области IT, так и для опытных разработчиков и системных администраторов, желающих расширить свои навыки в области DevOps.

 

Программа

1. Введение. История DevOps.
• Кто такой DevOps-инженер.
• Что такое Agile-практики.
• Достоинства и недостатки Agile.
• Какую роль DevOps-инженер занимает на проекте.
• Что должен уметь DevOps.
• Принципы DevOps.

2. Основы компьютерных сетей.
• Модель OSI.
• TCP/IP
• IP-адреса.
• Разделение сети на подсети.
• Cистема доменных имён (DNS).

3. Сетевые протоколы.
• TCP, UDP.
• DNS, DHCP.
• Защищенные сетевые протоколы (TLS/SSL).

4. Оболочка командной строки - Powershell.
• Основные команды.
• Работа с объектами/каталогами/файлами.
• Логические/Условные операторы.
• Создание сценариев.

5. Системы контроля версий.
• Введение в системы контроля версий.
• Git как система контроля версий.
• Установка и конфигурация Git.
• Базовые команды Git.
• Выбор ветки git checkout.
• Понятие GitHub Flow.

6. Cемейство операционных систем Unix.
• Архитектурные особенности Unix.
• Консоль. Стандартные команды Unix.
• Операционные системы на базе ядра Linux.
• Процесс загрузки и демоны.
• Файловые системы.
• Команды du, df, dd.
• Механизм LVM.

7. Введение в администрирование операционной системы Ubuntu 22.04.
• Установка системы.
• Навигация по файловой системе.
• Права доступа к файлам.
• Управление программным обеспечением.
• Управление пользователями.

8. Оболочка командной строки - Bash.
• Основные команды.
• Работа с объектами/каталогами/файлами.
• Логические/Условные операторы.
• Создание сценариев.

9. Процесс сборки приложений.
• Основные инструменты сборки приложений.
• Работа с зависимостями приложений.
• Компиляция проекта.
• Тестирование кода.
• Создание артефактов и их хранение.

10. Nginx веб-сервер.
• Отличие от Apache
• Установка веб-сервера.
• Структура конфигурационного файла.
• Раздача файлов и статического контента.
• Настройка прокси-сервера, балансировка нагрузки.

11. Понятие непрерывной интеграции и доставки.
• Непрерывная интеграция (Continuous Integration).
• Непрерывное развертывание/доставка (Continuous Deployment/Delivery).

12. Jenkins как инструмент непрерывной интеграции.
• Установка.
• Конфигурация Jenkins сервера.
• Управление доступом.
• Создание задач, установка плагинов.
• Настройка высокой доступности.

13. Ansible как инструмент управления конфигурациями.

• Установка.
• Синтаксис конфигурационных файлов.
• Инвентаризация серверов.
• Понятие Playbooks/Tasks/Roles.
• Модули.
• Безопасность.

14. Docker как инструмент контейнеризации.
• Средства виртуализации и контейнеризации.
• Реестр контейнеров.
• Структура Dockerfile.
• Создание Docker Image.
• Развертывание Docker контейнера.

15. Kubernetes как инструмент оркестрации контейнерных приложений.

• Микросервисная архитектура приложений.
• Архитектура Kubernetes кластера.
• Kubernetes контроллеры.
• Конфигурация и безопасность.
• Мониторинг работы Kubernetes.

16. Базы данных.
• Типы баз данных.
• Установка MySQL.
• Создание резервных копий.
• Восстановление из резервных копий.

17. Введение в облачные технологии.

• Облачные провайдеры и их сервисы.
• Инфраструктура как сервис.
• Инфраструктура как код.

18. Экзамен (Практика+Теория)

Перейти к курсу

Учебный Центр РДТЕХ

Частное образовательное учреждение дополнительного профессионального образования «Учебный центр РДТЕХ»
ИНН: 5037002490
ОГРН/ОГРНИП: 1025004860627
Публичная оферта
© 1995 - 2026 ЧОУ ДПО «УЦ РДТЕХ»
Политика конфиденциальности.

Связаться с нами

  •  Напишите
  •  8 (495) 777-01-27
  •  ПН–ПТ 10:00–19:00 (Мск)

Оставайтесь на связи

  •   VK
  •   Телеграм
  •   VK Видео
Служба поддержки сайта
Вы не вошли в систему (Вход)
Сводка хранения данных
Скачать мобильное приложение
На платформе Moodle