Стадия жизненного цикла модуля: Preview
У модуля есть требования для установки

v0.3.13

  • Исправление: цели снова обнаруживаются повторно — из-за TTL, продлевавшегося при каждом чтении, цель обнаруживалась один раз за время жизни контроллера, и LUN, предъявленный после старта, не подхватывался никогда. Интервал повторного обнаружения вынесен в отдельный параметр TARGET_RESCAN_INTERVAL со значением по умолчанию 5 минут
  • SCSIStorageClass, SCSITarget и SCSIDevice публикуют status.conditions и status.observedGeneration, добавлена колонка Ready
  • SCSIDevice: собственный тип условия и поле status.aggregatedStatus заменены на стандартный metav1.Condition, поле status.phase теперь вычисляется из условий, публикуются условия Attached, Mounted и Error
  • Ошибки контроллеров больше не подавляются фиксированным повтором через 3 секунды, а возвращаются в controller-runtime — это включает экспоненциальную задержку повторов и учёт ошибок в метриках
  • Обновление базовых образов до v1.3.25, Go 1.26.5 и lib-helm до 1.72.13

v0.3.12

  • Исправлен запуск компонентов модуля — возвращено монтирование hostPath /sys/fs/cgroup, удалённое в v0.3.11 как избыточное, и добавлено в контроллер модуля, где его не было. Монтирование нужно не драйверу, а среде запуска контейнеров — при монтировании хостового /sys подстановка sysfs для privileged-контейнеров вытесняется, а cgroup монтируется раньше /sys, в каталог distroless-образа (образа без пакетного окружения), где /sys/fs отсутствует и не может быть создан из-за readOnlyRootFilesystem
  • Исправлено монтирование initiatorname.iscsi — вместо hostPath типа File монтируется каталог /etc/iscsi. Раньше на узле с ненастроенным open-iscsi под контроллера навсегда оставался в ContainerCreating, и единственной диагностикой было событие kubelet; теперь контроллер запускается и сообщает об отсутствии имени инициатора в своём логе
  • Удалено ненужное монтирование /etc/iscsi в контейнер iscsi-command-service — сервис получает имя инициатора по gRPC и к файлу не обращается, а под непривилегированным пользователем файл и не был читаем
  • Обновление базовых образов v1.3.21, Go 1.26.5 и lib-helm до 1.72.12

v0.3.11

  • Исправлено обновление статуса SCSIDevice — устройство в состоянии Bound больше не теряет список SCSI-таргетов, если фоновое сканирование их не обнаружило (это обнуляло размер устройства, переводило его в Degraded и ломало удаление тома)
  • Исправлена гонка при подключении устройства — модуль ожидает появления symlink (символической ссылки) /dev/disk/by-id/scsi-, которую udev создаёт асинхронно, вместо однократной попытки её прочитать
  • Удалены избыточные монтирования hostPath /sys/fs/cgroup из контейнеров CSI-контроллера и CSI-узла — драйвер не работает с cgroups, а хостовый /sys уже смонтирован целиком
  • Устранена уязвимость GHSA-hrxh-6v49-42gf в google.golang.org/grpc, зависимость обновлена до 1.82.1
  • Обновление базовых образов v1.3.10, Go 1.26.5 и lib-helm до 1.72.10
  • Внутренние изменения в сборке модуля

v0.3.10

  • Обновление базовых образов, Go 1.26.5 и lib-helm до 1.72.9
  • Внутренние изменения в сборке модуля

v0.3.9

  • Исправлено формирование секрета доступа к registry (deckhouse-registry): теперь в него попадают данные авторизации только активного источника образов
  • Добавлены примеры настройки Fibre Channel в документацию
  • Обновление базовых образов container-base до v1.1.8, Go 1.26.4 и lib-helm до 1.72.4

v0.3.8

  • При пробросе меток из SCSIStorageClass в StorageClass теперь исключаются метки с заданными игнорируемыми префиксами
  • Обновление базовых образов и lib-helm до 1.72.0

v0.3.7

  • Метки из SCSIStorageClass теперь пробрасываются в управляемый StorageClass Kubernetes
  • Обновление базовых образов, Go 1.25.10 и lib-helm 1.71.12

v0.3.6

  • Внутренние изменения в структуре и сборке модуля

v0.3.5

  • Обновление базовых образов, Go 1.25.10 и lib-helm 1.71.11
  • Внутренние изменения в сборку модуля

v0.3.4

  • Изменения в CI: DistroPackagesProxy и env прокси в werf, доработки CVE-сканов (role_name, checkout)
  • Добавлены кластерные роли user-authz в шаблонах

v0.3.3

  • Установка пакетов в NodeGroupConfiguration больше не приводит к падению скрипта при ошибках

v0.3.2

  • Добавлены недостающие точки монтирования в distroless-образах csi-scsi-generic
  • Обновление базовых образов, Go и lib-helm
  • Перевод документации по ресурсам

v0.3.1

  • Фиксы CVE

v0.3.0

  • Обновление базовых образов и версии golang для фиксов CVE
  • Рефакторинг сборки образов для перевода на distroless

v0.2.10

  • Обновление базовых образов и версии golang
  • Обновление хуков, работающих при удалении модуля
  • Отключен запрос Capacity со стороны k8s (CSI не поддерживает выдачу Capacity)
  • Правки манифестов модуля и документации

v0.2.9

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

v0.2.8

  • Обновлена версия Go до 1.24.9
  • Обновлена lib-helm до deckhouse_lib_helm-1.64.1

v0.2.7

  • Обновлена версия Go до 1.24.8
  • Обновлена lib-helm до deckhouse_lib_helm-1.64.1

v0.2.6

  • Фиксы CVE

v0.2.5

  • Обновлена версия Go до 1.24.8
  • Обновлена lib-helm до deckhouse_lib_helm-1.63.6

v0.2.4

  • Добавлены файлы release notes

v0.2.3

  • Изменения для поддержки containerd v2

v0.2.2

  • Добавлен readonlyRootFilesystem для большей безопасности модуля

v0.2.1

  • Фиксы CVE

v0.2.0

  • Рефакторинг модуля
  • Добавлена поддержка режима HA
  • Добавлено сокрытие используемых устройств от модуля sds-node-configurator
  • Правка багов связанных с multipathd
  • Расширение документации

v0.1.2

  • Поддержка автоматического resize файловой системы при изменении размера тома (и полуавтоматический запрос расширения томов)

v0.1.1

  • Множественные доработки и исправления в работе с FibreChannel

v0.1.0

  • Стартовый релиз, базовая функциональность работает