ELMA365 On-Premises > ELMA365 On-Premises Enterprise > Установка дополнений для приложения ELMA365 / Установка Longhorn

Установка Longhorn

Longhorn — это простая в использовании распределённая блочная система хранения данных. Обеспечивает высокодоступное постоянное хранилище для Kubernetes. Вы можете применять встроенные функции инкрементных снимков, резервного копирования и хранения резервных копии во вторичном хранилище, совместимом с NFS или S3. Тем самым обеспечивается безопасность данных в кластере Kubernetes.

Требования к установке

Каждый узел в кластере Kubernetes, где установлен Longhorn, должен соответствовать следующим требованиям:

  • Kubernetes — не ниже v1.21, Docker — не ниже v1.13, Containerd — не ниже v1.3.7;
  • установлен пакет open-iscsi и запущена служба iscsid
  • установлен клиент NFSv4, необходимый для функции резервного копирования, и ReadWriteMany (RWX);
  • файловая система ext4 или XFS;
  • установлены пакеты bash, curl, findmnt, grep, awk, blkid, lsblk;
  • в кластере включено распространение монтирования (mount propagation).

Установка состоит из трёх этапов:

  1. Загрузить Helm-чарт и конфигурационный файл.
  2. Заполнить конфигурационный файл.
  3. Установить чарт Longhorn с помощью Helm в Kubernetes-кластер.

Шаг 1: Загрузить Helm-чарт и конфигурационный файл

Для установки через интернет получите конфигурационный файл values-longhorn.yaml, выполнив команду:

helm repo add elma365 https://charts.elma365.tech
helm repo update
helm show values elma365/longhorn > values-longhorn.yaml

Шаг 2: Заполнить конфигурационный файл

Заполните конфигурационный файл values-longhorn.yaml для установки сервиса Longhorn.

## Настройки longhorn
longhorn:
  defaultSettings:
# директория для хранения данных на хосте
    defaultDataPath: /longhorn
## планирование реплик на узлах с существующими исправными репликами того же тома.
    replicaSoftAntiAffinity: true
## автоматическая балансировка реплик при обнаружении доступного узла
    replicaAutoBalance: best-effort
  ingress:
## включение ingress для Longhorn UI
    enabled: false
    ingressClassName: ~
## домен (FQDN), по которому будет доступен Longhorn UI
    host: example.ru
## включение шифрования
    tls: false
    tlsSecret: elma365-onpremise-tls
  csi:
## корневой каталог kubelet
    kubeletRootDir: /var/lib/kubelet

Шаг 3: Установить чарт Longhorn с помощью Helm в Kubernetes-кластер

Выполните установку чарта Longhorn через интернет в namespace longhorn-system. Во время установки будет создан namespace, если не был создан ранее.

helm upgrade --install longhorn elma365/longhorn -f values-longhorn.yaml -n longhorn-system --create-namespace

Удалить чарт Longhorn с помощью Helm в Kubernetes-кластере

Чтобы разрешить удаление Longhorn, установите значение true для флага deleting-confirmation-flag, выполнив команду:

kubectl -n longhorn-system patch -p '{"value": "true"}' --type=merge lhs deleting-confirmation-flag

Чтобы удалить чарт Longhorn в namespace longhorn-system, выполните команду:

helm uninstall longhorn -n longhorn-system