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

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

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

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

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

  • Вы создали кластер и установили дополнение 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, уменьшение ёмкости не допускается.
  • После настройки квоты подкаталога её нельзя отменить.
  • Количество файлов или подкаталогов в файловой системе определяется как ёмкость квоты (в KB), делённая на 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 и сконфигурировать его политику возврата и режим привязки. Для получения подробной информации см. Creating a StorageClass Through the Console.

    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. Создайте файл pvc-sfsturbo-subpath.yaml.

    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
    Table 1 Ключевые параметры

    Параметр

    Обязательно

    Описание

    everest.io/volume-as

    Да

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

    everest.io/sfsturbo-share-id

    Да

    SFS Turbo ID

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

    everest.io/path

    Да

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

    everest.io/reclaim-policy

    Да

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

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

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

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

    Нет

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

    storage

    Да

    Запрошенная ёмкость в 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