apiVersion: helm.toolkit.fluxcd.io/v2 kind: HelmRelease metadata: name: local-path-provisioner namespace: local-path-provisioner spec: interval: 5m timeout: 10m values: replicaCount: 1 image: repository: cr.yandex/crp3ccidau046kdj8g9q/contour/local-path-provisioner-nn/local-path-provisioner tag: v0.0.24 pullPolicy: IfNotPresent helperImage: repository: cr.yandex/crp3ccidau046kdj8g9q/contour/local-path-provisioner-nn/busybox tag: latest imagePullSecrets: - name: regcred defaultSettings: registrySecret: null privateRegistry: registryUrl: null registryUser: null registryPasswd: null storageClass: create: true # Класс по умолчанию: встроенный в k3s провижинер отключён # (--disable=local-storage в docker-compose.yaml), и default-класса в # кластере иначе не остаётся — PVC без явного storageClassName висели бы # в Pending. defaultClass: true name: local-path reclaimPolicy: Delete # Путь ВНУТРИ контейнера ноды. Взят тот же, что использовал встроенный # провижинер, потому что он уже смонтирован с хоста: # ./k3s-storage/<нода> -> /var/lib/rancher/k3s/storage # Благодаря этому данные PVC переживают пересоздание контейнеров нод и # доступны для бэкапа обычными средствами хоста. Дефолт чарта # (/opt/local-path-provisioner) никуда не смонтирован — данные исчезли бы # вместе с контейнером ноды. nodePathMap: - node: DEFAULT_PATH_FOR_NON_LISTED_NODES paths: - /var/lib/rancher/k3s/storage rbac: create: true serviceAccount: create: true name: "" resources: {} nodeSelector: {} tolerations: [] affinity: {} configmap: name: local-path-config setup: |- set -eu mkdir -m 0777 -p "$VOL_DIR" teardown: |- set -eu rm -rf "$VOL_DIR"