Облачная платформаAdvanced

(Рекомендуется) Создание подкаталога SFS Turbo с использованием динамического PV

Язык статьи: Русский
Показать оригинал
Страница переведена автоматически и может содержать неточности. Рекомендуем сверяться с английской версией.

При создании тома SFS Turbo существует минимальный предел ёмкости, поэтому оплата не производится за использованную ёмкость. По умолчанию, когда вы монтируете том SFS Turbo к рабочей нагрузке, корневой каталог тома отображается в контейнерах. Фактическая ёмкость, используемая нагрузкой, значительно ниже предела, что приводит к растрате ресурсов. CCE обеспечивает эффективное использование ёмкости хранилища за счёт динамического создания подкаталогов SFS Turbo при создании PVC. Если ваша версия Everest 2.4.73, вы можете настроить ёмкость этих подкаталогов. Это позволяет нескольким рабочим нагрузкам совместно использовать файловую систему SFS Turbo.

Предварительные требования

  • Вы создали кластер и установили add-on CCE Container Storage (Everest) версии v2.3.23 или более поздней в кластере.
  • Для создания кластера с помощью команд убедитесь, что используется kubectl. Подробности см. в Accessing a Cluster Using kubectl.
  • Вы создали доступную файловую систему SFS Turbo, и файловая система SFS Turbo и кластер находятся в одном VPC.

Примечания и ограничения по квотам подкаталогов

  • Если квота подкаталога меньше 1 GiB, она автоматически устанавливается в 1 GiB. Максимальная квота не может превышать ёмкость целевой файловой системы SFS Turbo. Минимальный шаг масштабирования составляет 1 GiB, уменьшение ёмкости не допускается.
  • После настройки квоты подкаталога её нельзя отменить.
  • Количество файлов или подкаталогов в файловой системе определяется как ёмкость квоты (в КБ), делённая на 16. Верхний предел установлен в 1 миллиард и не может быть изменён пользователями.

Динамическое создание подкаталога SFS Turbo с помощью консоли

  1. Войдите в CCE console и нажмите название кластера, чтобы открыть консоль кластера.
  2. Выберите Storage в панели навигации. В правой панели нажмите вкладку PVCs. Нажмите Create PVC в правом верхнем углу. В отображённом диалоговом окне настройте параметры PVC.

    Параметр

    Описание

    PVC Type

    В этом примере выберите SFS Turbo.

    PVC Name

    Введите имя PVC, которое должно быть уникальным в namespace.

    Creation Method

    Выберите New subdirectory.

    Storage Classes

    Выберите csi-sfsturbo. Вы можете настроить StorageClass и сконфигурировать его политику возврата и режим привязки. Подробнее см. Basic StorageClass Settings.

    Access Mode

    Тома SFS Turbo поддерживают только ReadWriteMany, что означает, что том хранения может быть смонтирован на несколько узлов в режиме чтения/записи. Подробнее см. Volume Access Modes.

    SFS Turbo

    Нажмите Select SFS Turbo. На отображаемой странице выберите файловую систему SFS Turbo, соответствующую вашим требованиям, и нажмите OK.

    Subdirectory

    Введите абсолютный путь к подкаталогу, например, /a/b.

    Subdirectory Reclaim Policy

    Определите, следует ли сохранять подкаталоги при удалении PVC.

    • Retain: Когда PVC удаляется, PV удаляется, но его связанные подкаталоги сохраняются.
    • Delete: Когда PVC удаляется, PV и его связанные подкаталоги также удаляются.
      ПРИМЕЧАНИЕ:

      При удалении подкаталога удаляется только абсолютный путь подкаталога, указанный в PVC. Родительский каталог сохраняется.

    Ёмкость подкаталога

    • Not limited: Ёмкость подкаталога не ограничена.
    • Limited: Ёмкость подкаталога ограничена.

    Ёмкость

    Максимальная ёмкость подкаталога в GiB. Этот параметр доступен только при включённом ограничении ёмкости подкаталога.

  3. Нажмите Create, чтобы создать PVC и PV.

    Вы можете выбрать Storage в панели навигации и просмотреть созданные PVC и PV на вкладках PVCs и PVs соответственно.

Динамическое создание подкаталога SFS Turbo с помощью kubectl

  1. Используйте kubectl для доступа к кластеру.
  2. Create the pvc-sfsturbo-subpath.yaml file.

    apiVersion: v1
    kind: PersistentVolumeClaim
    metadata:
    name: pvc-sfsturbo-subpath # PVC name
    namespace: default
    annotations:
    everest.io/volume-as: absolute-path # An SFS Turbo subdirectory is used.
    everest.io/sfsturbo-share-id: <sfsturbo_id> # SFS Turbo ID
    everest.io/path: /a # Subdirectory that is automatically created, which must be an absolute path
    everest.io/reclaim-policy: retain-volume-only # When a PVC is deleted, the PV is deleted, but its associated subdirectories are retained .
    everest.io/csi.enable-sfsturbo-dir-quota: "true" # The status of quota limit
    spec:
    accessModes:
    - ReadWriteMany # ReadWriteMany must be selected for SFS Turbo.
    resources:
    requests:
    storage: 10Gi # For SFS Turbo subdirectory PVCs, this configuration specifies the capacity of a subdirectory when quota limit is enabled. In other scenarios, it is only used for verification and must not be empty or 0.
    storageClassName: csi-sfsturbo # StorageClass name of the SFS Turbo file system
    Таблица 1 Ключевые параметры

    Параметр

    Обязательно

    Описание

    everest.io/volume-as

    Yes

    Значение фиксировано на absolute-path, указывая, что используется динамически созданный подкаталог SFS Turbo.

    everest.io/sfsturbo-share-id

    Yes

    SFS Turbo ID

    Как получить: Войдите в консоль CCE, выберите Service List > Storage > Scalable File Service, и выберите SFS Turbo. В списке нажмите имя целевой файловой системы SFS Turbo. На странице деталей скопируйте содержимое после ID.

    everest.io/path

    Yes

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

    everest.io/reclaim-policy

    Yes

    Нужно ли сохранять подкаталоги при удалении PVC. Этот параметр должен использоваться вместе с PV Reclaim Policy. Этот параметр доступен только когда политика возврата PV имеет значение Delete. Варианты:

    • retain-volume-only: При удалении PVC PV удаляется, но его связанные подкаталоги сохраняются.
    • delete: При удалении PVC PV и его связанные подкаталоги также удаляются.
      ПРИМЕЧАНИЕ:

      При удалении подкаталога удаляется только абсолютный путь подкаталога, указанный в PVC. Родительский каталог сохраняется.

    everest.io/csi.enable-sfsturbo-dir-quota

    No

    Нужно ли включить ограничение квоты для подкаталога. Если значение установлено в true, ограничение включено. Если значение пусто или установлено в любое другое значение, ограничение отключено.

    storage

    Yes

    Запрашиваемая ёмкость в PVC, в Gi.

    • Когда ограничение ёмкости подкаталога включено (everest.io/csi.enable-sfsturbo-dir-quota установлен в true), storage указывает ёмкость подкаталога, и её значение должно быть целым числом.

      Если storage задан в виде десятичного числа, значение будет автоматически округлено вверх. Например, если storage задано как 10.1Gi, будет создан подкаталог размером 11 GiB.

    • Если ёмкость подкаталога не ограничена, этот параметр не имеет смысла и используется только для проверки. Вы можете задать этому параметру фиксированное значение 10Gi.

  3. Выполните следующую команду для создания PVC:

    kubectl apply -f pvc-sfsturbo-subpath.yaml