Files
K3S/addons/csi-nfs/README.md
Sergey Antropoff 38aaadbfb1 docs: sync addon docs with explicit external/internal service modes
Обновлена документация под новые аддоны (gitlab, redis, mongodb, kafka, kafka-ui, rabbitmq) и новую модель явного выбора зависимостей. Добавлены и унифицированы описания переключателей *_database_mode и *_redis_mode, обновлена таблица зависимостей аддонов, примеры конфигурации и список vault-секретов.
2026-04-29 23:21:04 +03:00

2.4 KiB
Raw Blame History

CSI NFS Driver

CSI-драйвер для динамического provisioning PersistentVolume через NFS. Создаёт StorageClass nfs-<hostname> (например nfs-master01). Работает в паре с аддоном nfs-server или внешним NFS сервером.

Быстрый старт

# group_vars/all/addons.yml
addon_csi_nfs: true
make addon-csi-nfs

Параметры

Переменная Умолч. Описание
csi_nfs_server первый мастер IP или hostname NFS сервера
csi_nfs_share /storage/nfs Базовый путь NFS экспорта
csi_nfs_storageclass_default true Сделать StorageClass по умолчанию
csi_nfs_reclaim_policy Delete Delete | Retain
csi_nfs_on_delete delete delete | retain | archive

Внешний NFS сервер

csi_nfs_server: "192.168.1.20"
csi_nfs_share: "/srv/nfs/k8s"

Использование в PVC

apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: app-data
spec:
  accessModes: [ReadWriteMany]
  storageClassName: nfs-master01
  resources:
    requests:
      storage: 5Gi

Политика при удалении PVC

  • delete — директория удаляется
  • retain — директория остаётся
  • archive — директория переименовывается в archived-<имя>

Структура данных на сервере

/storage/nfs/
├── default/          ← namespace
│   └── my-pvc/       ← имя PVC
│       └── pvc-xxx/  ← имя PV
│           └── data/

Проверка

kubectl get storageclass
# NAME                PROVISIONER       RECLAIMPOLICY   VOLUMEBINDINGMODE
# nfs-master01 (default)  nfs.csi.k8s.io  Delete          Immediate

kubectl get pvc -A

Официальные ресурсы