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

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

NFSStorageClass

Short names: nsc

Scope: Cluster
Version: v1alpha1

Интерфейс управления StorageClass для CSI-драйвера nfs.csi.k8s.io.

Ручное создание StorageClass для данного драйвера запрещено.

  • spec
    объект
    Определяет конфигурацию StorageClass.
    • spec.chmodPermissions
      строка
      Права для chmod, которые будут применены к субдиректории тома в NFS-разделе.

      Шаблон: ^[0-7]{3,4}$

    • spec.connection
      объект

      Обязательный параметр

      Настройки NFS-сервера.
      • spec.connection.host
        строка

        Обязательный параметр

        Адрес NFS-сервера.

        Минимальная длина: 1

      • spec.connection.mtls
        булевый

        Доступно в редакциях SE, SE+, EE, FE.

        Использовать ли mTLS — требует, чтобы TLS был включён.

        По умолчанию: false

      • spec.connection.nfsVersion
        строка

        Обязательный параметр

        Версия NFS.

        Допустимые значения: 3, 4.1, 4.2

      • spec.connection.share
        строка

        Обязательный параметр

        Путь к точке монтирования на NFS-сервере.

        Минимальная длина: 1

      • spec.connection.tls
        булевый

        Доступно в редакциях SE, SE+, EE, FE.

        Использовать ли TLS для подключения.

        По умолчанию: false

    • spec.mountOptions
      объект
      Опции монтирования.
      • spec.mountOptions.mountMode
        строка
        Режим монтирования NFS-раздела.

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

      • spec.mountOptions.readOnly
        булевый
        Монтирование в режиме «только чтение» (read-only).
      • spec.mountOptions.retransmissions
        целочисленный
        Количество повторных попыток клиента NFS выполнить запрос, прежде чем он предпримет дальнейшие действия по восстановлению соединения.

        Допустимые значения: 1 <= X

      • spec.mountOptions.timeout
        целочисленный

        Время, в течение которого клиент NFS ожидает ответа, прежде чем повторить запрос, в десятых долях секунды.

        Например, 600 — это 60 секунд.

        Допустимые значения: 1 <= X

    • spec.reclaimPolicy
      строка

      Обязательный параметр

      Задаёт режим поведения при удалении PersistentVolumeClaim (PVC).

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

      • Delete — при удалении PVC также удаляется связанный PersistentVolume (PV) и соответствующие данные на NFS-сервере;
      • Retain — при удалении PVC связанные PersistentVolume и данные на NFS-сервере не удаляются и требуют ручного удаления пользователем. Подробнее в документации Kubernetes.

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

    • spec.volumeBindingMode
      строка

      Обязательный параметр

      Задаёт режим создания тома.

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

      • Immediate — том создаётся сразу после создания PVC;
      • WaitForFirstConsumer — том создаётся только при первом использовании PVC со стороны пода. Подробнее в документации Kubernetes.

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

    • spec.volumeCleanup
      строка

      Функция доступна в Enterprise Edition.

      Метод очистки содержимого субдиректории PV перед удалением.

      Если параметр не задан, драйвер NFS CSI удаляет каталог, созданный для PV на NFS-сервере, без очистки данных. Если параметр задан, драйвер стирает каждый файл в каталоге PV.

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

      • Discard — используется функция Discard (trim) файловой системы для освобождения блоков данных (эта опция доступна только если она поддерживается, например, в NFSv4.2);
      • RandomFillSinglePass — перед удалением содержимое каждого файла перезаписывается случайными данными один раз. Реализуется путём вызова утилиты shred;
      • RandomFillThreePass — перед удалением содержимое каждого файла перезаписывается случайными данными три раза. Реализуется путём вызова утилиты shred.

      Допустимые значения: Discard, RandomFillSinglePass, RandomFillThreePass

    • spec.workloadNodes
      объект
      • spec.workloadNodes.nodeSelector
        объект

        Селектор узлов для определения правил выбора узлов, на которых Persistent Volumes (PVs), созданные этим StorageClass, могут подключаться.

        Комбинирует простое сопоставление лейблов и сложные выражения для фильтрации узлов.

        Если этот параметр пропущен, общие ресурсы NFS можно монтировать на любом узле кластера, работающем под управлением ОС Linux.

        • spec.workloadNodes.nodeSelector.matchExpressions
          массив объектов

          Список сложных условий выбора узлов.

          Каждое условие задаёт ключ, оператор и, при необходимости, значения для фильтрации узлов на основе их лейблов или других полей.

          • spec.workloadNodes.nodeSelector.matchExpressions.key
            строка
          • spec.workloadNodes.nodeSelector.matchExpressions.operator
            строка

            Допустимые значения: In, NotIn, Exists, DoesNotExist

          • spec.workloadNodes.nodeSelector.matchExpressions.values
            массив строк
        • spec.workloadNodes.nodeSelector.matchLabels
          объект

          Карта лейблов, которые должны точно совпадать с лейблами узла.

          Узлы, которые не соответствуют хотя бы одному из указанных лейблов, будут исключены.

  • status
    объект
    Текущая информация о StorageClass.
    • status.phase
      строка

      Общее текущее состояние StorageClass.

      Возможные значения:

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

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

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