Доступно в редакциях: Open/CE, SE, SE+, Ultimate/EE, Certified Core/CSE Lite (1.73), Certified Pro/CSE Pro (1.73)
Входит в расширения: Продвинутое хранение данных, Хранение данных
Стадия жизненного цикла модуля: Общедоступная версия
У модуля есть требования для установки
Работоспособность модуля гарантируется только при использовании стоковых ядер, поставляемых вместе с поддерживаемыми дистрибутивами.
Работоспособность модуля при использовании других ядер или дистрибутивов возможна, но не гарантируется.
Требования
К версии Deckhouse Platform: 1.72 и выше.
Параметры
Версия схемы: 1
-
-
булевыйsettings.disableDsВыключить DaemonSet
sds-node-configurator.По умолчанию:
false -
булевыйsettings.enableNetlinkBlockDeviceDiscoveryИспользовать netlink/sysfs вместо
lsblkкак источник данных для обнаружения блочных устройств в agent. При выключенном флаге agent обнаруживает блочные устройства черезlsblk.По умолчанию:
false -
булевыйsettings.enableThinProvisioningВключить поддержку thin-LVM-томов.
По умолчанию:
true -
строкаsettings.fileDevicesDirectory
Базовый каталог на каждом узле, внутри которого агенту разрешено создавать файлы-подложки для файловых LVM-устройств (
spec.fileDevices).Каждый
spec.fileDevices[].directoryдолжен совпадать с этим каталогом либо быть его подкаталогом; файлы-подложки вне этого поддерева агент отклоняет, чтобы произвольный путь на узле (например,/etcили/var/lib/kubelet) нельзя было переполнить. Переопределите параметр, указав отдельный диск с данными, смонтированный на узле, если в каталоге по умолчанию недостаточно места: при стандартной разметке узла каталог по умолчанию делит файловую систему с/var/lib/kubeletи/var/lib/containerd.Прежний каталог по умолчанию,
/opt/deckhouse/sds/file-devices, принимается дополнительно к указанному здесь. Полеspec.fileDevices[].directoryнеизменяемое, поэтому записи, созданные до переноса дерева модуля на узле, продолжают указывать его и не могут быть исправлены; они работают там, где есть.Корень файловой системы (
/) указать нельзя: тогда подкаталогом считался бы любой абсолютный путь и ограничение перестало бы работать.По умолчанию:
/var/lib/deckhouse/sds/file-devicesШаблон:
^/[^/]+(/[^/]+)*$ -
целое числоsettings.fileDevicesMinFreeSpacePercent
Доля файловой системы (в процентах), которую агент оставляет свободной при создании или увеличении файлового LVM-устройства (
spec.fileDevices).Файлы-подложки создаются с преаллокацией, и по умолчанию они лежат на корневой файловой системе узла. Занять место до последнего свободного байта — это уже не ошибка провижининга, а отказ уровня узла: kubelet начинает вытеснять поды при
nodefs.available<10%, задолго до реального заполнения файловой системы. Значение по умолчанию (15%) совпадает с более строгим порогом kubeletimagefs.availableи оставляет запас относительно порогаnodefs.Запись, которая не укладывается в это ограничение, не создаётся, а причина сообщается в condition
VGConfigurationAppliedресурса LVMVolumeGroup; сама Volume Group при этом продолжает работать.Уменьшать значение имеет смысл, только если
fileDevicesDirectoryуказывает на отдельный диск, от которого больше ничего на узле не зависит.0полностью отключает резерв.По умолчанию:
15Допустимые значения:
0 <= X <= 90 -
строкаsettings.logLevelУровень логирования для приложений модуля.
По умолчанию:
INFOДопустимые значения:
ERROR,WARN,INFO,DEBUG,TRACE -
целое числоsettings.missingBlockDeviceRetentionHours
Сколько часов хранится ресурс BlockDevice, устройство которого пропало с узла, прежде чем агент его удалит.
BlockDevice, который нельзя использовать (
consumable: false, обычно устройство уже является физическим томом LVM), при пропаже устройства не удаляется: вместо этого ему выставляется conditionMissing— сначалаUnknown, а после 10 минут отсутствия устройстваTrue. На узле, где LUN подключаются и отключаются динамически (гипервизор виртуализации, узел, подключающий диски виртуальным машинам), без удаления каждое такое устройство навсегда оставляло бы после себя ресурс.Срок отсчитывается с момента, когда
Missingперешёл вTrue. Ресурс удаляется, только если ни один LVMVolumeGroup не перечисляет его вstatus.nodesи егоstatus.lvmVolumeGroupNameне указывает на существующий LVMVolumeGroup: физический том, пропавший из-под работающей группы томов, остаётся на виду. Если устройство вернётся, агент создаст ресурс заново.0отключает удаление: ресурсы хранятся, пока их не удалят вручную.По умолчанию:
24Допустимые значения:
0 <= X <= 8760
-