Стадия жизненного цикла модуля: Предварительная версия (preview)

У модуля есть требования для установки

v0.9.0

Ключевые изменения

  • Добавлен тип ClusterNetwork PrimaryCNI для резервирования адресов подов cni-cilium через IPAddress, например постоянных адресов ВМ при живой миграции

Новый функционал

  • Модуль поддерживает единственный ClusterNetwork main типа PrimaryCNI
  • Агент маршрутизирует адреса PrimaryCNI между узлами вместо vm-route-forge
  • Под может запросить адрес PrimaryCNI записью {"type":"Main","ipAddress":"<адрес>"} в аннотации networks-spec

Улучшения

  • Ресурс IPAddress с владельцем, отличным от пода (например, VirtualMachine), остаётся занятым, пока владелец существует
  • Условие Bound у IPAddress теперь присутствует всегда (False для неиспользуемого адреса)
  • Добавлен алерт D8SDNObsoleteClusterNetworkFound на ClusterNetwork, занимающий зарезервированное имя main

Исправления

  • Агент больше не очищает usedByPods и Attached у IPAddress, используемого подом на другом узле

Незначительные изменения

  • Добавлены e2e-тесты для PrimaryCNI

v0.8.1

Улучшения

  • Пространство имён d8-sdn теперь работает в режиме Pod Security Standards restricted

Исправления

  • Исправлена устаревшая аннотация network.deckhouse.io/networks-status, которая оставалась у пода или ВМ после удаления всех дополнительных сетей

Обновления безопасности

  • Обновлены уязвимые зависимости в образах модуля

Незначительные изменения

  • Из release-бандла модуля удалён неиспользуемый промежуточный образ llvm
  • modules-gitlab-ci обновлён до v19.0

v0.8.0

Ключевые изменения

  • Модуль теперь доступен в редакциях CE, BE, SE и SE+ в дополнение к EE, FE и CSE
  • Добавлены короткие имена для ресурсов моудля

Исправления

  • Исправлена ситуация, когда агент не записывал (или записывал не полностью) аннотацию networks-status у подов с несколькими дополнительными сетями при временной ошибке подключения сети
  • Исправлены коллизии имён ресурсов IPAddress

Обновления безопасности

  • Исправлены CVE-2026-56855, CVE-2026-78662 и CVE-2026-84304, обновлены прочие уязвимые зависимости в образах модуля и инструментах сборки

Документация

  • Из документации удалено описание нереализованного типа SystemNetwork SRIOVVirtualFunction

Незначительные изменения

  • Изменён порт healthcheck агента с 4264 на 4275
  • Реорганизована структура CI/CD pipeline
  • Исправлены проблемы валидации модуля, обнаруженные dmt-lint
  • В release-бандл модуля добавлены документация, OpenAPI-схемы и CRD

v0.7.0

Новый функционал

  • В ресурсы Network и ClusterNetwork добавлено поле spec.mtu для настройки MTU интерфейсов подов — значение наследуется интерфейсами и при изменении инициирует переконфигурацию уже подключённых подов на узле

Исправления

  • Исправлено зависание ресурсов NodeNetworkInterface в состоянии Terminating, если создание интерфейса завершилось ошибкой и status.ifName не был установлен
  • Исправлены периодические ошибки агента при прерывании получения списка интерфейсов из-за параллельных изменений на узле

Обновления безопасности

  • Исправлены CVE в образах модуля и зависимостях

Незначительные изменения

  • В CI pipeline добавлен запуск Go unit-тестов и E2E-тестов

v0.6.10

Улучшения

  • Агент теперь ожидает готовности SDN-контроллера, прежде чем начать работу. Таким образом в логах нет ошибок

Исправления

  • Исправлен CrashLoopBackOff агента в редакции CSE с CRI containerd v2, вызванный монтированием всего /sys в контейнер с read-only root filesystem
  • Исправлено переполнение altname для Veth-пары при длинных именах Namespace или Pod за счёт хеширования

v0.6.9

Обновления безопасности

  • Исправлена CVE GHSA-hrxh-6v49-42gf
  • Исправлены настройки securityContext
  • Добавлен SecurityPolicyException для агента

Незначительные изменения

  • Исправлена сборка CSE

v0.6.8

Исправления

  • Исправлено формирование имени Veth-интерфейса, чтобы избежать коллизий имён

Документация

  • Добавлены Changelog и Release Notes

v0.6.7

Обновления безопасности

  • Исправлены CVE
  • Исправлены правила RBAC

Незначительные изменения

  • Обновлена структура CI/CD pipeline

v0.6.6

Ключевые изменения

  • Tap и Bridge интерфейсы внутри Pod больше не создаются
  • IP-адрес назначается на Veth-интерфейс внутри Pod

Улучшения

  • Добавлены deploy-зависимости для WebhookConfiguration

Обновления безопасности

  • Исправлены CVE
  • Расширены права RBAC ClusterAdmin для NodeNetworkInterfaces

v0.6.5

Незначительные изменения

  • Добавлен mount-points.yaml для CSE с поддержкой CRI v2

v0.6.4

Незначительные изменения

  • Адаптирован процесс сборки модуля для Deckhouse Certified Security Edition (CSE)

v0.6.3

Улучшения

  • Добавлена настройка UID и GID для Tap-интерфейсов

v0.6.2

Ключевые изменения

  • В валидации CRD запрещён пустой labelSelector.matchLabels

Улучшения

  • Добавлено создание Tap-интерфейса с корректными опциями для KubeVirt (multi-queue)

v0.6.1

Улучшения

  • Логирование переведено с klog на deckhouse/log
  • Выполнен рефакторинг структуры контроллера и его логов

Исправления

  • Исправлены ошибки SR-IOV
  • В агенте добавлен автоматический перевод родительского интерфейса в состояние UP для VLAN
  • Исправлены мелкие ошибки в агенте

Обновления безопасности

  • Ресурс SystemNetworks добавлен в роли RBAC
  • Исправлены CVE

v0.6.0

Новый функционал

  • В агенте добавлена поддержка DHCP на базе eBPF

Исправления

  • ServiceAccount control-plane-manager получил право использовать ValidatingAdmissionPolicy для NodeNetworkInterfaces
  • Исправлена совместимость DRA-ресурсов с Kubernetes 1.35

Документация

  • Добавлено предупреждение об IP-адресах для ClusterNetwork с типом Access
  • Добавлен пример настройки hugepages

v0.5.4

Улучшения

  • Добавлена метка NNI network.deckhouse.io/interface-name
  • Для ClusterNetwork и Network добавлены additionalPrinterColumns Ready и IPAddressPool
  • Назначение IP-адреса перенесено с Tap на Bridge

Исправления

  • Исправлен IPAddressLease для IPAddress с OwnerReferences

Обновления безопасности

  • Исправлены CVE

v0.5.3

Исправления

  • Исправлена работа ClusterNetwork с типом Access

v0.5.2

Обновления безопасности

  • Исправлены CVE

Незначительные изменения

  • Исправлен импорт module.yaml в werf в CI

v0.5.1

Новый функционал

  • Добавлена поддержка SystemNetwork поверх bond-интерфейсов
  • Добавлен ресурс ClusterIPAddressLease для ClusterIPAddress

v0.5.0

Новый функционал

  • Добавлен функционал SystemNetwork

Улучшения

  • В агенте добавлено периодическое восстановление отсутствующего CNI conflist
  • В CNI-плагине добавлены повторные попытки подключения к unix-сокету и расширено логирование
  • Базовый образ golang-alpine обновлён до версии 1.25

v0.4.2

Обновления безопасности

  • Добавлены RBAC-правила для ресурсов SDN

v0.4.1

Улучшения

  • Добавлена валидация поля NetworkClass spec.vlan.idPool

Исправления

  • Исправлено выделение VLAN для Network в контроллере
  • Исправлена ошибка поиска NNI в кэше агента

Документация

  • Добавлен русский перевод описаний CRD Network и ClusterNetwork

v0.4.0

Новый функционал

  • Добавлен функционал IPAM для управления IP-адресами

Документация

  • Добавлена документация по IPAM
  • Проведены ревью и рефакторинг документации

Незначительные изменения

  • Добавлены E2E-тесты для IPAM
  • Добавлен Makefile и исправлены ошибки Go lint

v0.3.0

Новый функционал

  • Добавлены CRD и контроллер UnderlayNetwork
  • Добавлена поддержка SR-IOV и проброс физических сетевых устройств в Pod через DRA-плагин и ресурс UnderlayNetwork

Улучшения

  • Реализована автоматическая выдача TLS-сертификатов AdmissionWebhook через хуки Deckhouse
  • Для VPA установлен updateMode InPlaceOrRecreate

Исправления

  • Созданные bond-интерфейсы автоматически переводятся в состояние UP

Обновления безопасности

  • Исправлены CVE

Документация

  • Добавлена документация по настройке UnderlayNetwork

Незначительные изменения

  • Добавлены E2E-тесты для bond-интерфейсов

v0.2.0

Ключевые изменения

  • Разрешено использование bond-интерфейсов при создании сетей
  • В CRD переименовано поле Vlan в VLAN и обновлены описания ресурсов

Улучшения

  • В агенте добавлено монтирование каталога containerd и определение постоянного MAC-адреса через ethtool
  • Оптимизирован кэш контроллера и добавлена поддержка pprof

Исправления

  • Исправлена обработка метаданных bond-интерфейсов в контроллере и агенте
  • Исправлен garbage collection ресурсов NodeNetworkInterface
  • Исправлено отключение интерфейса, которому уже назначен IP-адрес

Документация

  • Обновлена документация модуля

Незначительные изменения

  • E2E-логика удалена из модуля и перенесена в общий pipeline
  • Удалён неиспользуемый режим main network
  • Обновлены CI и описание модуля

v0.1.0

Ключевые изменения

  • Выпущен первый релиз модуля SDN с базовым функционалом управления сетями

Зависимости

  • Минимально поддерживаемая версия Deckhouse повышена до 1.72