Стадия жизненного цикла модуля: General Availability
У модуля есть требования для установки
Deckhouse Kubernetes Platform устанавливает CRD, но не удаляет их при отключении модуля. Если вам больше не нужны созданные CRD, удалите их.
LocalStorageClass
Short names: lsc
Scope: Cluster
Version: v1alpha1
-
объектspecОпределяет конфигурацию Kubernetes StorageClass.
-
строкаspec.fsTypeТип файловой системы для StorageClass.
По умолчанию:
ext4Допустимые значения:
ext4,xfs -
объектspec.lvm
Обязательный параметр
Конфигурация LVM.-
массив объектовspec.lvm.lvmVolumeGroups
Обязательный параметр
Список записей, отбирающих ресурсы LVMVolumeGroup, на которых создаются PersistentVolume.
Каждая запись отбирает LVMVolumeGroup либо по имени (
name), либо по лейблам (labelSelector). В записи должно быть задано ровно одно из этих полей, и весь список должен использовать один тип записей — либо толькоname, либо толькоlabelSelector, без смешивания. Запись сlabelSelectorконтроллер вычисляет (resolve — разрешает) в каждый подходящий LVMVolumeGroup и поддерживает в актуальном состоянии при добавлении, удалении или перелейблировании (изменении лейблов) LVMVolumeGroup. В name-based записях каждый LVMVolumeGroup может быть указан не более одного раза. ПересекающиесяlabelSelector, разрешающиеся в один LVMVolumeGroup, сворачиваются при совпаденииthin.poolNameи отклоняются при конфликте thin pool.-
объектspec.lvm.lvmVolumeGroups.labelSelectorСелектор по лейблам, отбирающий один или несколько ресурсов LVMVolumeGroup. Взаимоисключающий с
name.-
массив объектовspec.lvm.lvmVolumeGroups.labelSelector.matchExpressionsСписок требований к лейблам. Требования объединяются логическим И (AND).
-
строкаspec.lvm.lvmVolumeGroups.labelSelector.matchExpressions.keyКлюч лейбла, к которому применяется требование.
-
строкаspec.lvm.lvmVolumeGroups.labelSelector.matchExpressions.operatorОператор, задающий отношение ключа к набору значений. Допустимые операторы — In, NotIn, Exists и DoesNotExist.
-
массив строкspec.lvm.lvmVolumeGroups.labelSelector.matchExpressions.valuesМассив строковых значений. Для операторов In и NotIn массив должен быть непустым, для Exists и DoesNotExist — пустым.
-
-
объектspec.lvm.lvmVolumeGroups.labelSelector.matchLabelsКарта пар {ключ, значение}. Одна пара {ключ, значение} в matchLabels эквивалентна элементу matchExpressions с полем key, равным «ключ», оператором In и массивом values, содержащим единственное значение «значение».
-
-
строкаspec.lvm.lvmVolumeGroups.nameИмя ресурса LVMVolumeGroup. Взаимоисключающее с
labelSelector.Максимальная длина:
253 -
объектspec.lvm.lvmVolumeGroups.thinThin pool, используемый для LVMVolumeGroup, отобранных этой записью. Обязателен при
type: Thin, запрещён приtype: Thick.-
строкаspec.lvm.lvmVolumeGroups.thin.poolName
Обязательный параметр
Имя thin pool.Длина:
1..253Шаблон:
^.*$
-
-
-
объектspec.lvm.thickНастройки для Logical Volumes в ресурсе LVMVolumeGroup.
-
булевыйspec.lvm.thick.contiguous
Если установлено в
true, логический том создаётся с флагомcontiguous.Внимание: используйте этот флаг с осторожностью. Он может привести к неправильному планированию подов, использующих PersistentVolume. Шедулер проверяет свободное место в VG и выбирает узлы с наибольшим количеством свободного места, но не может определить максимальное количество последовательного свободного места. В результате под может быть запланирован на узел, где том не сможет быть создан из-за недостатка последовательного свободного места. В таком случае потребуется ручное вмешательство администратора.
-
-
строкаspec.lvm.type
Обязательный параметр
Тип выделения ресурсов для логических томов LVM (LV), создаваемых для PersistentVolume (PV).Допустимые значения:
Thick,Thin -
строкаspec.lvm.volumeCleanup
Метод очистки тома после удаления PersistentVolume.
Если параметр не задан, полное удаление данных не гарантируется.
Возможные значения:
RandomFillSinglePass— том перезаписывается случайными данными один раз перед удалением. Не рекомендуется для твердотельных накопителей, так как перезапись уменьшает ресурс накопителя. Для thin-томов перезаписывается только используемое на момент удаления тома пространство.RandomFillThreePass— том перезаписывается случайными данными три раза перед удалением. Не рекомендуется для твердотельных накопителей, так как перезапись уменьшает ресурс накопителя. Для thin-томов перезаписывается только используемое на момент удаления тома пространство.Discard— перед удалением все блоки тома отмечаются как свободные с помощью системного вызоваdiscard. Применимо только для твердотельных накопителей и thick-томов.
Допустимые значения:
RandomFillThreePass,RandomFillSinglePass,Discard
-
-
строкаspec.reclaimPolicy
Обязательный параметр
Политика освобождения ресурсов для StorageClass. Возможные значения:
Delete— при удалении PersistentVolumeClaim также удаляются PersistentVolume и связанное хранилище;Retain— при удалении PersistentVolumeClaim остаются PersistentVolume и связанное хранилище.
Допустимые значения:
Delete,Retain -
строкаspec.volumeBindingMode
Обязательный параметр
Режим привязки томов для StorageClass. Возможные значения:
Immediate— создаёт PersistentVolume сразу после создания PersistentVolumeClaim;WaitForFirstConsumer— создаёт PersistentVolume только после создания пода, использующего PersistentVolumeClaim.
Допустимые значения:
Immediate,WaitForFirstConsumer
-
-
объектstatusТекущее состояние StorageClass.
-
массив объектовstatus.conditionsПоследние наблюдения состояния ресурса. Тип условия:
Ready.-
строкаstatus.conditions.lastTransitionTimeВремя последней смены статуса этого условия. Не обновляется, если изменились только
reasonилиmessage. -
строкаstatus.conditions.messageЧеловекочитаемое пояснение текущего статуса.
Максимальная длина:
32768 -
целочисленныйstatus.conditions.observedGenerationЗначение
metadata.generation, для которого это условие было выставлено.Допустимые значения:
0 <= X -
строкаstatus.conditions.reasonМашиночитаемая причина текущего статуса, пригодная для фильтрации логов и алертинга.
Длина:
1..1024Шаблон:
^[A-Za-z]([A-Za-z0-9_,:]*[A-Za-z0-9_])?$ -
строкаstatus.conditions.statusТекущий статус условия.
Допустимые значения:
True,False,Unknown -
строкаstatus.conditions.typeТип условия.
Readyпринимает значениеTrue, когда StorageClass создан и LVMVolumeGroups разрешены, иFalse— если проход reconcile завершился ошибкой (reason: ReconcileFailed) или ресурс удаляется (reason: Deleting). Пока контроллер не обработал ресурс в первый раз, условие отсутствует, а не имеет значениеUnknown.Максимальная длина:
316Шаблон:
^([a-z0-9]([-a-z0-9]*[a-z0-9])?(\.[a-z0-9]([-a-z0-9]*[a-z0-9])?)*/)?(([A-Za-z0-9][-A-Za-z0-9_.]*)?[A-Za-z0-9])$
-
-
целочисленныйstatus.observedGenerationЗначение
metadata.generation, которое контроллер обработал последним. Если оно отстаёт отmetadata.generation, значит контроллер ещё не обработал последнее изменение спецификации, и условия ниже описывают предыдущее состояние. -
строкаstatus.phase
Текущее состояние StorageClass. Возможные значения:
Failed— контроллер получил некорректную конфигурацию или возникли ошибки в ходе выполнения операций;Created— все операции завершились успешно.
Допустимые значения:
Failed,Created -
строкаstatus.reasonДополнительная информация о текущем состоянии StorageClass.
-