Модуль 2: Введение в операторы

Обзор

Теперь, когда вы понимаете архитектуру Kubernetes, паттерн контроллера и пользовательские ресурсы (Custom Resources) (из Модуля 1), пришло время создать свой первый оператор! Этот модуль знакомит с паттерном оператора и учит использовать Kubebuilder для создания операторов, управляющих пользовательскими ресурсами.

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

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

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

  • Поймёте паттерн оператора и когда его использовать
  • Узнаете, как работает Kubebuilder и его архитектуру
  • Настроите полноценную среду разработки
  • Создадите и запустите свой первый оператор «Hello World»
  • Разберётесь в структуре проекта оператора

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

  1. Урок 2.1: Паттерн оператора
  2. Урок 2.2: Основы Kubebuilder
  3. Урок 2.3: Настройка среды разработки
  4. Урок 2.4: Ваш первый оператор

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

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

  • ✅ Понимаете компоненты управляющего слоя Kubernetes
  • ✅ Знаете, как работают механизмы API
  • ✅ Понимаете паттерн контроллера и согласование
  • ✅ Умеете создавать и использовать пользовательские ресурсы (CRD)

Если вы не завершили Модуль 1, начните с Модуля 1: Глубокое погружение в архитектуру Kubernetes.

Настройка

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

  1. Проверьте завершение Модуля 1:
  2. Убедитесь, что среда разработки готова:
    ./scripts/setup-dev-environment.sh
    
  3. Запущенный кластер kind:
    ./scripts/setup-kind-cluster.sh
    
  4. Проверьте, что kubebuilder установлен:
    kubebuilder version
    

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

Каждый урок включает практические упражнения. Все лабораторные используют кластер kind и kubebuilder.

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

К концу этого модуля у вас будет:

  • Полноценный оператор «Hello World», управляющий пользовательским ресурсом
  • Понимание структуры проекта kubebuilder
  • Умение запускать операторы локально для разработки
  • Основа для создания более сложных операторов в Модуле 3

Решения

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

Навигация