Развертывание кластера хранилища данных

Создайте кластер хранилища данных на одном (первом) узле, затем заполните его дополнительными узлами.

Ограничения

  • Диску можно назначить роль, только если его размер превышает 1 ГиБ.
  • Системному диску можно назначить дополнительную роль, только если его размер не меньше 100 ГиБ.
  • Жесткие диски с черепичной магнитной записью (SMR) можно использовать только с ролью Хранилище и только в случае, если на сервере есть твердотельный диск с ролью Кэш.
  • Нельзя использовать на одном уровне хранилища стандартные и SMR-диски.
  • Нельзя одновременно назначить роли системным и несистемным дискам.

Предварительные требования

  • Четкое понимание архитектуры кластера хранения данных и ролей дисков, которые разъясняются в разделе О кластере хранилища данных.
  • Четкое понимание концепции Уровни хранения данных.
  • Сети инфраструктуры должны быть настроены, как описано в разделе Настройка сетей.
  • Сетевые интерфейсы узла должны быть настроены согласно указаниям в разделе Настройка сетевых интерфейсов серверов.
  • Если поддерживается RDMA, этот режим должен быть включен, как описано в разделе Включение RDMA.
  • Внешние DNS-серверы должны быть добавлены автоматически во время установки или настроены вручную, как описано в разделе Добавление внешних DNS-серверов.
  • Все узлы должны отображаться на панели администрирования в разделе Инфраструктура > Серверы как имеющие состояние Не назначен.

Чтобы создать кластер хранилища на первом сервере

Панель администратора

  1. Откройте экран Инфраструктура > Серверы и нажмите Создать кластер хранилища.
  2. Чтобы настроить роли дисков или расположение сервера, нажмите значок шестерни.

  3. Введите имя для кластера. Имя может содержать только буквы латинского алфавита (a-z, A-Z), цифры (0–9) и дефисы (-).
  4. При необходимости включите шифрование.
  5. Нажмите кнопку Создать.

Отслеживать создание кластера можно на экране Инфраструктура > Серверы. Создание может занять некоторое время в зависимости от количества настраиваемых дисков. Кластер будет создан после завершения настройки.

Интерфейс командной строки

Используйте следующую команду:

vinfra cluster create [--disk <disk>:<role>[:<key=value,…>]] [--tier-encryption {0,1,2,3}]
                      --node <node> <cluster-name>
--disk <disk>:<role>[:<key=value,…>]

Конфигурация диска в формате:

  • <disk>: идентификатор или имя дискового устройства
  • <role>: роль диска (cs, mds, journal, mds-journal, mds-system, cs-system, system)
  • разделенные запятыми пары key=value с ключами (необязательно):
    • tier: уровень диска (0, 1, 2 или 3)
    • journal-tier: уровень диска журнала (кэша) (0, 1, 2 или 3)
    • journal-type: тип диска журнала (кэша) (no_cache — без кэша, inner_cache — внутренний кэш или external_cache — внешний кэш)
    • journal-disk: идентификатор или имя устройства диска журнала (кэша)

    • bind-address: IP-адрес привязки для сервиса метаданных

Например: sda:cs:tier=0,journal-type=inner_cache.
Этот параметр можно указывать несколько раз.

--tier-encryption {0,1,2,3}
Включение шифрования для определенных уровней кластера хранилища. По умолчанию шифрование отключено. Этот параметр можно указывать несколько раз.
--node <node>
Идентификатор сервера или имя хоста
<cluster-name>
Имя кластера хранилища данных

Например, чтобы создать кластер хранилища stor1 на сервере node001, выполните:

# vinfra cluster create stor1 --node node001

Поскольку роли дисков не указаны явно, они назначаются автоматически: mds-system для системного диска и cs для всех остальных дисков.

Просмотреть сведения о кластере хранилища можно в выводе команды vinfra cluster show:

# vinfra cluster show
+-------+--------------------------------------------+
| Field | Value                                      |
+-------+--------------------------------------------+
| id    | 1                                          |
| name  | stor1                                      |
| nodes | - host: node001.vstoragedomain             |
|       |   id: f59dabdb-bd1c-4944-8af2-26b8fe9ff8d4 |
|       |   is_installing: false                     |
|       |   is_releasing: false                      |
+-------+--------------------------------------------+

Для удаления кластера хранилища используйте команду vinfra cluster delete.

Чтобы добавить узлы в кластер

Панель администратора

  1. На экране Инфраструктура > Серверы щелкните по неназначенному серверу.
  2. На правой панели сервера нажмите Присоединить к кластеру.
  3. Нажмите Присоединить, чтобы автоматически назначить роли дискам и добавить сервер в текущее расположение. Вместо этого можно нажать значок шестерни, чтобы вручную настроить роли дисков или расположение сервера.

Интерфейс командной строки

Используйте следующую команду:

vinfra node join [--disk <disk>:<role>[:<key=value,…>]] <node>
--disk <disk>:<role>[:<key=value,…>]

Конфигурация диска в формате:

  • <disk>: идентификатор или имя дискового устройства
  • <role>: роль диска (cs, mds, journal, mds-journal, mds-system, cs-system, system)
  • разделенные запятыми пары key=value с ключами (необязательно):
    • tier: уровень диска (0, 1, 2 или 3)
    • journal-tier: уровень диска журнала (кэша) (0, 1, 2 или 3)
    • journal-type: тип диска журнала (кэша) (no_cache — без кэша, inner_cache — внутренний кэш или external_cache — внешний кэш)
    • journal-disk: идентификатор или имя устройства диска журнала (кэша)

    • bind-address: IP-адрес привязки для сервиса метаданных

Например: sda:cs:tier=0,journal-type=inner_cache.
Этот параметр можно указывать несколько раз.

<node>
Идентификатор сервера или имя хоста

Например, чтобы добавить сервер node002 в кластер хранилища и назначить дискам роли (mds-system для sda, cs для sdb и sdc), выполните:

# vinfra node join f59dabdb-bd1c-4944-8af2-26b8fe9ff8d4 --disk sda:mds-system \
--disk sdb:cs --disk sdc:cs

Добавленный сервер появится в выводе команды vinfra node list:

# vinfra node list
+--------------+--------------+------------+-----------+-------------+----------+
| id           | host         | is_primary | is_online | is_assigned | is_in_ha |
+--------------+--------------+------------+-----------+-------------+----------+
| 09bb6b8<...> | node001<...> | True       | True      | True        | False    |
| 187edb1<...> | node002<...> | False      | True      | True        | False    |
+--------------+--------------+------------+-----------+-------------+----------+