Настройка Zakroma.Storage (ZDS)

ZDS (Zakroma.Storage)

Zakroma.Storage - это вариант использования в качестве ресурса хранения серверов с дисками. Архитектура поддерживает отказоустойчивое хранение как на уровне дисков (при применении Erasure coding), так и на уровне узлов хранилища.

image

Для каждого узла хранения требуется установить/настроить пакет zakroma-ds-agent

Установка

Ansible

Ниже описана ручная установка пакетов. Рекомендуем воспользоваться поставляемой актуальной версией Ansible-роли, которая позволяет установить пакеты быстрее и сразу на несколько узлов. См. Установка через Ansible

  • Скачать rpm/dep пакет для установки zakroma-ds-agent, сохранить в домашнюю папку (в качестве примера)
    1wget --user <LOGIN> --password <PASSWORD> https://nexus.digital-spirit.ru/repository/zakroma-deb/zakroma/zakroma-agent/zakroma-ds-agent-X.X.X-Y.deb
  • Выполнить установку пакета
    • для apt
      1sudo apt install ./zakroma-ds-agent-X.X.X-Y.deb
    • для apt-get
      1sudo dpkg -i ./zakroma-ds-agent-X.X.X-Y.deb 2sudo apt-get install -f
    • для yum
      1sudo yum localinstall ./zakroma-ds-agent-X.X.X-Y.rpm
  • Выполнить настройку пакета
    • конфигурация располагается по пути /opt/zakroma/zakroma-ds-agent/cfg/config.yaml

Необходимо предоставить права на запись для пользователя zakroma-ds-agent для пути, указанного для volumes.path

  • пример конфигурации (3 ноды, в каждой ноде по 1 volume, EC 3:1):

    1 log: 2 level: INFO #уровень логирования 3 server: 4 port: 8080 #порт для работы приложения 5 tls: #настройка tls 6 enable: false #по умолчанию отключена 7 key: /opt/zakroma/zakroma-ds-agent/tls/key.key # путь до закрытого ключа, необходимо сгенерировать 8 crt: /opt/zakroma/zakroma-ds-agent/tls/crt.key # путь до открытого ключа, необходимо сгенерировать, добавить сертификат в список доверенных (добавить .crt в /etc/ssl/certs) 9 logic: 10 statusConfigPath: /opt/zakroma/zakroma-ds-agent/bin/node_status.yaml # расположение служебного файла текущего статуса ноды 11 changelog: 12 changelogPath: /opt/zakroma/zakroma-ds-agent/bin/changelog #расположение служебного файла changelog 13 auth: 14 username: #Логин для доступа, нужно сгенерировать 15 password: #Пароль для доступа, нужно сгенерировать 16 nodeName: node1 #имя текущей ноды 17 dataPart: 2 #кол-во частей для данных 18 parityPart: 1 #кол-во частей для востановления 19 nodes: # приведена конфигурация для 3 нод, по одному volume на каждой ноде 20 - name: node1 21 hostPort: 10.1.0.16:8080 #host + port для ноды, значение указано в качестве примера 22 volumeCount: 1 23 - name: node2 24 hostPort: 10.1.0.17:8080 #host + port для ноды, значение указано в качестве примера 25 volumeCount: 1 26 - name: node3 27 hostPort: 10.1.0.18:8080 #host + port для ноды, значение указано в качестве примера 28 volumeCount: 1 29 volumes: 30 - index: 1 #индексы для volume, начинаются с 1 31 path: /mnt/agent/volume1 #расположения места для хранения файлов
    • пример конфигурации для однонодовой конфигурации:
    1 log: 2 level: INFO #уровень логирования 3 server: 4 port: 8080 #порт для работы приложения 5 tls: #настройка tls 6 enable: false #по умолчанию отключена 7 key: /opt/zakroma/zakroma-ds-agent/tls/key.key # путь до закрытого ключа, необходимо сгенерировать 8 crt: /opt/zakroma/zakroma-ds-agent/tls/crt.key # путь до открытого ключа, необходимо сгенерировать, добавить сертификат в список доверенных (добавить .crt в /etc/ssl/certs) 9 auth: 10 username: #Логин для доступа, нужно сгенерировать 11 password: #Пароль для доступа, нужно сгенерировать 12 logic: 13 mode: FS 14 volumes: 15 - index: 1 #индексы для volume, начинаются с 1 16 path: /mnt/agent/volume1 #расположения места для хранения файлов
  • Перезапустить службу

    1sudo systemctl restart zakroma-ds-agent.service --now

Что дальше?

Добавьте в административной консоли новое хранилище, указав путь к установленной службе Zakroma.Storage (ZDS) (см. Настройка хранилища)