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

Deckhouse Kubernetes Platform устанавливает CRD, но не удаляет их при отключении модуля. Если вам больше не нужны созданные CRD, удалите их.

LocalStorageClass

Scope: Cluster
Version: v1alpha1

LocalStorageClass — пользовательский ресурс Kubernetes, определяющий конфигурацию для Kubernetes StorageClass.
  • 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.thin
          объект
          Thin 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.phase
      строка

      Текущее состояние StorageClass. Возможные значения:

      • Failed — контроллер получил некорректную конфигурацию или возникли ошибки в ходе выполнения операций;
      • Created — все операции завершились успешно.

      Допустимые значения: Failed, Created

    • status.reason
      строка
      Дополнительная информация о текущем состоянии StorageClass.