Стадия жизненного цикла модуля: 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
- Стартовый релиз, базовая функциональность работает