Модуль 8: Продвинутые темы и практические паттерны

Обзор

Поздравляем с достижением финального модуля! Теперь, когда вы умеете создавать готовые к продакшену операторы (Модуль 7), пришло время изучить продвинутые темы и практические паттерны. Этот модуль охватывает мультиарендность, композицию операторов, управление stateful-приложениями и лучшие практики популярных операторов.

Продолжительность: 6–7 часов
Предварительные требования:

  • Завершение всех предыдущих модулей (Модули 1–7)
  • Готовый к продакшену оператор из Модуля 7
  • Понимание продвинутых концепций Kubernetes

Цели обучения

К концу этого модуля вы:

  • Научитесь создавать операторы с областью действия на весь кластер и мультиарендные операторы
  • Будете композировать несколько операторов вместе
  • Научитесь управлять stateful-приложениями с резервным копированием и миграциями
  • Разберётесь в практических паттернах операторов
  • Примените лучшие практики популярных операторов

Структура модуля

  1. Урок 8.1: Мультиарендность и изоляция пространств имён
  2. Урок 8.2: Композиция операторов
  3. Урок 8.3: Управление stateful-приложениями
  4. Урок 8.4: Практические паттерны и лучшие практики

Проверка предварительных требований

Перед началом убедитесь, что вы завершили:

  • Модуль 7: готовый к продакшену оператор
  • ✅ Имеете рабочий оператор со всеми возможностями
  • ✅ Понимаете развёртывание в продакшене
  • ✅ Готовы к продвинутым темам

Если вы не завершили Модуль 7, начните с Модуля 7: Подготовка к продакшену.

Что вы создадите

На протяжении этого модуля вы расширите свой оператор Database, добавив:

  • Новый API ClusterDatabase с областью действия на весь кластер для поддержки мультиарендности
  • Функциональность резервного копирования и восстановления
  • Продвинутые паттерны stateful-приложений
  • Практические лучшие практики

Настройка

Перед началом этого модуля:

  1. Подготовьте свой готовый к продакшену оператор из Модуля 7:
    • Должен быть упакован и развёрнут
    • Должны быть настроены HA и безопасность
    • Готов к продвинутым возможностям
  2. Убедитесь, что среда разработки готова:
    ./scripts/setup-dev-environment.sh
    
  3. Запущенный кластер kind:
    ./scripts/setup-kind-cluster.sh
    

Практические лабораторные работы

Каждый урок включает практические упражнения, которые добавляют продвинутые возможности в ваш оператор.

Решения

Полные рабочие решения для всех лабораторных доступны в каталоге решений:

Решения лабораторной 8.1 — мультиарендный оператор

Решения лабораторной 8.2 — композиция операторов

Решения лабораторной 8.3 — управление stateful-приложениями

  • backup.go — реализация функциональности резервного копирования
  • restore.go — реализация функциональности восстановления
  • rolling-update.go — обработка скользящих обновлений

Решения лабораторной 8.4 — финальный проект

Навигация