# Longhorn Distributed block storage для Kubernetes. Хранит данные реплицированно на дисках нод кластера. Поддерживает снимки, резервное копирование в S3/NFS, live migration томов. ## Быстрый старт ```yaml # group_vars/all/addons.yml addon_longhorn: true ``` ```bash make addon-longhorn ``` ## Параметры | Переменная | Умолч. | Описание | |---|---|---| | `longhorn_default_replica_count` | `2` | Количество реплик по умолчанию | | `longhorn_data_path` | `/var/lib/longhorn` | Путь данных на нодах | | `longhorn_storage_class_default` | `false` | Сделать default StorageClass | | `longhorn_ingress_enabled` | `false` | UI через Ingress | ## Использование в PVC ```yaml apiVersion: v1 kind: PersistentVolumeClaim metadata: name: db-data spec: accessModes: [ReadWriteOnce] storageClassName: longhorn resources: requests: storage: 10Gi ``` ## Настройка реплик для конкретного PVC ```yaml apiVersion: v1 kind: PersistentVolumeClaim metadata: name: critical-data annotations: longhorn.io/numberOfReplicas: "3" spec: accessModes: [ReadWriteOnce] storageClassName: longhorn resources: requests: storage: 20Gi ``` ## UI через Ingress ```yaml longhorn_ingress_enabled: true longhorn_ingress_host: "longhorn.example.com" longhorn_ingress_tls: true ``` ## Резервное копирование в MinIO В Longhorn UI → Settings → Backup Target: ``` s3://longhorn-backup@us-east-1/ ``` Secret: ```bash kubectl create secret generic longhorn-backup-secret \ --from-literal=AWS_ACCESS_KEY_ID=minioadmin \ --from-literal=AWS_SECRET_ACCESS_KEY=changeme \ --from-literal=AWS_ENDPOINTS=http://minio.minio.svc.cluster.local:9000 \ -n longhorn-system ``` ## Исключить ноду из storage (RPi) ```bash kubectl label node rpi01 node.longhorn.io/create-default-disk=false ``` ## Диагностика ```bash kubectl get pods -n longhorn-system kubectl get pv,pvc -A # Longhorn API: kubectl -n longhorn-system port-forward svc/longhorn-frontend 8080:80 ``` ## Официальные ресурсы - Официальный сайт: [https://longhorn.io/](https://longhorn.io/) - Официальная документация: [https://longhorn.io/docs/](https://longhorn.io/docs/) - Версии Helm chart / ПО: [https://artifacthub.io/packages/helm/longhorn/longhorn](https://artifacthub.io/packages/helm/longhorn/longhorn)