Создание PV

Ручное создание статического persistent volume типа HostPath или NFS Shared Storage.

  • HostPath: монтирует файловый каталог с хоста, на котором находится контейнер, в указанный путь внутри контейнера (соответствует HostPath в Kubernetes), позволяя контейнеру использовать файловую систему хоста для постоянного хранения. Если хост становится недоступен, HostPath может стать недоступен.

  • NFS Shared Storage: NFS Shared Storage использует сообщественный плагин хранения NFS CSI (Container Storage Interface), который более соответствует принципам проектирования Kubernetes, обеспечивая возможность клиентского доступа для нескольких сервисов. Перед использованием убедитесь, что в текущем кластере развернут NFS storage plugin.

Содержание

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

  • Подтвердите размер создаваемого persistent volume и убедитесь, что бэкенд-хранилище в данный момент имеет возможность предоставить соответствующий объем.

  • Получите адрес доступа к бэкенд-хранилищу, путь к монтируемой директории, учетные данные доступа (если требуются) и другую необходимую информацию.

Пример PersistentVolume

# example-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
  name: example-pv
spec:
  capacity:
    storage: 5Gi
  accessModes:
    - ReadWriteOnce
  persistentVolumeReclaimPolicy: Retain
  storageClassName: manual
  hostPath:
    path: "/mnt/data"
  1. Объем хранилища.
  2. Способ монтирования тома.
  3. Что происходит после удаления PVC (Retain, Delete, Recycle).
  4. Имя StorageClass (для динамического связывания).
  5. Тип бэкенд-хранилища.

Создание PV через веб-консоль

  1. Перейдите в раздел Administrator.

  2. В левой навигационной панели выберите Storage Management > Persistent Volumes (PV).

  3. Нажмите Create Persistent Volume.

  4. Ознакомьтесь с инструкциями ниже и настройте параметры перед нажатием Create.

Информация о хранилище

ТипПараметрОписание
HostPathPathПуть к каталогу файлов на узле, который поддерживает том хранилища. Например: /etc/kubernetes.
NFS Shared StorageServer AddressАдрес доступа к NFS-серверу.
PathПуть монтирования файловой системы NFS на серверном узле, например /nfs/data.
NFS Protocol VersionПоддерживаемые версии протокола NFS на платформе: v3, v4.0 и v4.1. Для просмотра информации о версиях на сервере выполните команду nfsstat -s.

Создание PV через CLI

kubectl apply -f example-pv.yaml

Режимы доступа

Режимы доступа persistent volume зависят от соответствующих параметров, установленных бэкенд-хранилищем.

Режим доступаЗначение
ReadWriteOnce (RWO)Может быть смонтирован с правами чтения и записи одним узлом.
ReadWriteMany (RWX)Может быть смонтирован с правами чтения и записи несколькими узлами.
ReadOnlyMany (ROX)Может быть смонтирован только для чтения несколькими узлами.

Политики возврата

Политика возвратаЗначение
DeleteПри удалении persistent volume claim одновременно удаляется связанный persistent volume, а также ресурс тома в бэкенд-хранилище.
Примечание: политика возврата для PV типа NFS Shared Storage не поддерживает Delete.
RetainДаже при удалении persistent volume claim связанный persistent volume и данные хранилища сохраняются. Требуется ручное управление данными и последующее удаление persistent volume.

Связанные операции

Вы можете нажать ⋮ справа на странице списка или выбрать Operations в правом верхнем углу страницы с деталями для обновления или удаления persistent volume по необходимости.

Удаление persistent volume применимо в следующих двух сценариях:

  • Удаление несвязанного persistent volume: том не использовался для записи и больше не требуется для записи, что освобождает соответствующее пространство хранилища при удалении.

  • Удаление persistent volume с политикой Retain: persistent volume claim был удалён, но из-за политики retain том не был удалён одновременно. Если данные persistent volume были сохранены в другом хранилище или больше не нужны, удаление тома также освободит соответствующее пространство.

Дополнительные ресурсы