На основе драйвера хранения сообщества NFS CSI (Container Storage Interface) предоставляется возможность доступа к нескольким системам или аккаунтам хранения NFS.
В отличие от традиционной клиент-серверной модели доступа NFS, общее хранилище NFS использует плагин сообщества NFS CSI, который более соответствует принципам проектирования Kubernetes и позволяет клиентам обращаться к нескольким серверам.
v3, v4.0 и v4.1. Вы можете выполнить команду nfsstat -s на стороне сервера для проверки информации о версии.Войдите в систему как Administrator.
В левой навигационной панели нажмите Storage > StorageClasses.
Нажмите Create StorageClass.
Справа от NFS CSI нажмите Deploy, чтобы перейти на страницу Plugins.
Справа от плагина Alauda Container Platform NFS CSI нажмите ⋮ > Install.
Дождитесь, пока статус развертывания не изменится на Deployment Successful, после чего развертывание будет завершено.
Alauda Container Platform NFS CSI является Non-config plugin, имя модуля — nfs
Нажмите Create Storage Class.
Примечание: Следующий контент представлен в виде формы, но вы также можете выполнить операцию с помощью YAML.
Выберите NFS CSI и нажмите Next.
Следуйте инструкциям ниже для настройки соответствующих параметров.
| Параметр | Описание |
|---|---|
| Name | Имя класса хранения. Должно быть уникальным в пределах текущего кластера. |
| Service Address | Адрес доступа к NFS серверу. Например: 192.168.2.11. |
| Path | Путь монтирования файловой системы NFS на узле сервера. Например: /nfs/data. |
| NFS Protocol Version | В настоящее время поддерживаются три версии: v3, v4.0 и v4.1. |
| Reclaim Policy | Политика восстановления для постоянного тома. - Delete: При удалении запроса на постоянный том (PersistentVolumeClaim) связанный постоянный том также будет удалён. - Retain: Даже при удалении запроса на постоянный том связанный постоянный том останется. |
| Access Modes | Все режимы доступа, поддерживаемые текущим хранилищем. При последующем объявлении постоянных томов можно выбрать только один из этих режимов для монтирования. - ReadWriteOnce (RWO): Может быть смонтирован как для чтения и записи одним узлом. - ReadWriteMany (RWX): Может быть смонтирован как для чтения и записи несколькими узлами. - ReadOnlyMany (ROX): Может быть смонтирован как только для чтения несколькими узлами. |
| Allocated Projects | Пожалуйста, выделите проекты, которые могут использовать этот тип хранилища. Если в данный момент нет проектов, нуждающихся в этом типе хранилища, вы можете не выделять проекты сейчас и обновить их позже. |
| subDir | Каждый PersistentVolumeClaim (PVC), созданный с использованием общего класса хранения NFS, соответствует подкаталогу внутри общего ресурса NFS. По умолчанию подкаталоги именуются по шаблону ${pv.metadata.name} (то есть именем PersistentVolume). Если имя, сгенерированное по умолчанию, не соответствует вашим требованиям, вы можете настроить правила именования подкаталогов. |
Поле subDir поддерживает только следующие три переменные, которые автоматически разрешаются драйвером NFS CSI:
${pvc.metadata.namespace}: пространство имён PVC.${pvc.metadata.name}: имя PVC.${pv.metadata.name}: имя PV.Правило именования subDir ДОЛЖНО обеспечивать уникальность имён подкаталогов. В противном случае несколько PVC могут использовать один и тот же подкаталог, что приведёт к конфликтам данных.
Рекомендуемые конфигурации:
${pvc.metadata.namespace}_${pvc.metadata.name}_${pv.metadata.name}<cluster-identifier>_${pvc.metadata.namespace}_${pvc.metadata.name}_${pv.metadata.name}Предназначено для нескольких Kubernetes кластеров, использующих один и тот же NFS сервер. Такая конфигурация обеспечивает чёткое различие кластеров за счёт включения идентификатора кластера (например, имени кластера) в правила именования подкаталогов.
Не рекомендуемые конфигурации:
${pvc.metadata.namespace}-${pvc.metadata.name}-${pv.metadata.name}
Не используйте дефис (-) в качестве разделителя, так как это может привести к неоднозначным именам подкаталогов. Например: если два PVC называются ns-1/test и ns/1-test, оба могут сгенерировать одинаковый подкаталог ns-1-test.
${pvc.metadata.namespace}/${pvc.metadata.name}/${pv.metadata.name}
НЕ настраивайте subDir для создания вложенных директорий. Драйвер NFS CSI удаляет только последний уровень директории ${pv.metadata.name} при удалении PVC, оставляя родительские директории сиротами на NFS сервере.
После подтверждения правильности конфигурации нажмите Create.