Перейти к основному содержимому

Установка узла и сборка кластера

Все узлы ставятся с одного загрузочного образа, и шаги на каждом узле одни и те же. Параметры кластера (ID, число узлов, избыточность) вводятся на каждом узле заново и должны совпадать везде. Уникален только ID узла.

Установщик спрашивает четыре группы параметров:

  • состав кластера: ID кластера, число узлов, избыточность, ID узла;
  • адреса сервисов: WSS URL для консолей ВМ и имя KMS-сервера для активации образов Windows;
  • сеть и диски: первый диск слоя хранения, агрегаты, VLAN, шлюз по умолчанию, имя хоста;
  • разметку системного диска.

Все значения берутся из контрольного листа установки. Его заполняют до того, как первый сервер загрузится с образа.

Образ самодостаточный: в нём базовая система, пакеты и шаблон управляющей ВМ (vStack Center). Интернет во время установки не нужен.

Кластер собирается сам при первой загрузке. Каждый узел ждёт iSCSI-сессий со всеми остальными, потом создаёт пулы, разворачивает шаблоны и поднимает управляющую ВМ. Перезагружать узлы строго одновременно не нужно, но все они должны подняться в пределах 30 минут.

Когда использовать​

Инструкция ведёт от чистых серверов до собранного кластера. Для добавления узла в работающий кластер она не подходит: число узлов и избыточность задаются при установке и потом не меняются.

Предусловия​

  • Узлы и коммутаторы соответствуют требованиям к оборудованию и сети.
  • Контрольный лист установки заполнен (таблица ниже).
  • Коммутаторы настроены: vPC или LACP в режиме active, нужные VLAN, MTU 9216 на портах, IGMP snooping и querier в VLAN изолированных сетей.
  • Создана A-запись для доменного имени веб-интерфейса управления. Она указывает на адрес с последним октетом 250 в сети публичных точек доступа: для сети 192.0.2.0/24 это 192.0.2.250.
  • В настройках сервера включены загрузка UEFI и VT-x. VT-d включите, если собираетесь пробрасывать PCI-устройства в ВМ.
  • Часы сервера выставлены в UTC, а у узлов будет доступ к NTP-серверу. Без синхронизации времени кластер не запустится.
  • Есть загрузочный образ vStack OS. Образы выдаются из репозитория vStack только на разрешённые IP-адреса. Чтобы добавить свой адрес, напишите в поддержку.
  • Есть доступ к консоли сервера: физический или через интерфейс управления (Virtual media).

Контрольный лист установки​

№ПараметрПример значенияПримечание
1Первый диск слоя храненияda1Установщик возьмёт столько дисков подряд, сколько узлов в кластере
2Конфигурация агрегатов LACP: имена, интерфейсы, MTU, адресlagg10: ix0,ix1, 9000 и lagg20: mce0,mce1, 9000Вариант с двумя парами портов
3Количество узлов в кластере5По умолчанию 4
4Параметр «N plus»2Избыточность кластера и слоя хранения, от 1 до 3
5ID кластера100От 1 до 999
6VLAN ID кластерной сети1001
7VLAN ID сети, инкапсулирующей изолированные виртуальные сети1002non-routed
8VLAN ID сети публичных точек доступа1003non-routed
9VLAN ID сети хранения (native)1004routed
10Адресное пространство сети публичных точек доступа192.0.2.0/24non-routed
11Шлюз по умолчанию192.0.2.1Адрес из сети публичных точек доступа
12Диапазон VLAN ID для маршрутизируемых виртуальных сетей1010-1060
13Доменное имя веб-интерфейса управленияmgmtvm.q100.example.comA-запись на адрес .250
14WSS URLwss://mgmtvm.q100.example.com/.wssТочка подключения консолей ВМ
15Доменное имя KMS (для образов Windows)kms02.example.com

Выберите схему портов​

Установщик поддерживает две разводки портов. Выбирают одну на весь кластер, и от неё зависит, нужен ли второй агрегат.

Выделенные пары портов SDN и SDSОбъединённая пара портов
Агрегатыlagg10 (VXLAN и публичные точки доступа) и lagg20 (кластерная сеть и хранение)только lagg10
Физические порты2 порта на каждый агрегат2 порта на весь узел
Шаг ввода имени второго агрегатаВведите lagg20 и его параметрыНажмите Ctrl-C
Когда выбиратьТрафик хранения нужно отделить от трафика виртуальных сетейПортов на узле или коммутаторе хватает только на один агрегат

Установите узел​

Повторите шаги на каждом узле кластера.

  1. Запишите загрузочный образ на носитель или подключите его через Virtual media в интерфейсе управления сервером. Образ занимает около 17–19 ГБ.

  2. Проверьте, что в настройках загрузки выбран UEFI и включён VT-x.

  3. Загрузитесь с носителя. На приветственном экране нажмите Install.

  4. Выберите Continue with default keymap и нажмите Select.

  5. Укажите первый диск слоя хранения (п. 1 контрольного листа).

  6. Укажите ID кластера, число от 1 до 999.

  7. Укажите количество узлов в кластере. По умолчанию стоит 4, это минимальная рекомендованная конфигурация.

  8. Укажите избыточность кластера и слоя хранения, число от 1 до 3.

  9. Укажите ID текущего узла. В кластере он должен быть уникальным.

  10. Введите WSS URL, точку подключения консолей ВМ. URL указывается со схемой, например wss://mgmtvm.q100.example.com/.wss. Значение можно изменить позже.

    TODO(need-context): проверить, записывает ли генератор конфигурации 3.2.0 введённый WSS URL; в 3.0 он собирал адрес сам из ID кластера и игнорировал ввод.

  11. Укажите диапазон VLAN, например 1010-1060. Это резерв под сети, из адресного пространства которых ВМ получают IP-адреса.

  12. Укажите имя KMS-сервера для образов Windows. Значение можно изменить позже.

    TODO(need-context): проверить, использует ли 3.2.0 введённое имя KMS; в 3.0 генератор подставлял фиксированное значение вместо ввода.

  13. Укажите имя первого агрегата. Оставьте lagg10.

  14. Заполните форму первого агрегата:

    • два физических интерфейса;
    • Aggregation Protocol: оставьте lacp;
    • MTU: 9000. Форма предлагает 9216, но в конфигурацию узла попадёт не больше 9000;
    • IP-адрес и префикс сети. Последний октет равен 100 + ID узла: у первого узла 192.0.2.101/24, у второго 192.0.2.102/24 и так далее.
  15. Перейдите ко второму агрегату:

    • если он нужен, укажите имя lagg20 и заполните ту же форму. На адаптерах Mellanox интерфейсы называются mce0 и mce1, MTU выше 9000 им задавать нельзя;
    • если не нужен, нажмите Ctrl-C на шаге ввода имени.
  16. Заполните форму VLAN. Для каждого сегмента (кластерная сеть, VXLAN, публичные точки доступа, хранение) укажите VLAN ID, адрес сети и агрегат, на котором этот VLAN поднимется. Значения берите из пп. 6–10 контрольного листа.

  17. Укажите шлюз по умолчанию, адрес из сети публичных точек доступа (п. 11).

  18. Укажите имя хоста строго в формате q<ID кластера>u<ID узла>: ID кластера от одной до трёх цифр, ID узла ровно тремя цифрами. Для кластера 100 и узла 1 это q100u001. Имя в другом формате генератор конфигурации не примет.

  19. На экране выбора компонентов системы нажмите Ok.

  20. Выберите Manual, чтобы разметить системный диск вручную.

  21. В редакторе разделов нажмите Create и выберите GPT.

  22. Создайте первый раздел, efi.

  23. Создайте корневую файловую систему. Рекомендуемый размер 100 ГБ: такой раздел потом расширяется без простоя узла.

    TODO(need-context): подтвердить рекомендацию 100 ГБ под корень и расширение без простоя, в исходниках установщика такого значения нет.

  24. Создайте раздел подкачки (SWAP).

  25. Нажмите Finish, затем Commit. Пройдут две шкалы прогресса.

  26. В окне конфигурации загрузки нажмите No и введите имя новой записи.

  27. Дважды введите пароль суперпользователя (root). Символы при вводе не отображаются.

  28. В окне конфигурации сети нажмите Cancel. Сеть уже описана в предыдущих шагах.

  29. Выберите режим часового пояса: Yes, если в прошивке сервера часы стоят в UTC, No, если это неизвестно.

  30. Если выбрали No, укажите временную зону UTC. Все узлы кластера должны работать в UTC.

  31. Проверьте дату и время. Если они верны, нажмите Skip.

  32. На экране служб, запускаемых при старте узла, оставьте конфигурацию по умолчанию. В ней уже включён ntpd.

  33. На экране опций безопасности оставьте конфигурацию по умолчанию.

  34. Шаг создания дополнительных пользователей пропустите, нажмите No.

  35. В окне финальной конфигурации выберите Exit и нажмите Ok. Начнётся предварительное размещение облачных образов и репозиториев. Несколько минут шкалы прогресса не будет, окно ожидания остаётся открытым.

  36. Дождитесь установки пакетов на узле.

  37. Нажмите No, чтобы завершить установку.

Соберите кластер​

  1. Убедитесь, что vStack OS установлена на все узлы.
  2. Перезагрузите каждый узел кнопкой Reboot. Строгая синхронность не нужна, но уложитесь в 30 минут: столько каждый узел ждёт iSCSI-сессий с остальными.
  3. Дождитесь, пока узлы создадут пулы и разместят на них облачные образы. Узел, прошедший этап, снова ждёт остальных.
  4. Дождитесь, пока поднимется управляющая ВМ (vStack Center) и кластер начнёт работу.

Проверка результата​

На любом узле:

  1. hostname возвращает имя в формате q100u001.
  2. ifconfig lagg10 (и ifconfig lagg20, если второй агрегат есть) показывает laggproto lacp, MTU 9000, а у обоих портов флаги ACTIVE, COLLECTING и DISTRIBUTING. Порт без этих флагов значит, что линк до коммутатора не собрался в LACP.
  3. zpool list показывает пулы кластера в состоянии ONLINE.
  4. Адрес с последним октетом 250 в сети публичных точек доступа отвечает: там работает управляющая ВМ.

Как проверить состав кластера и пулы в веб-интерфейсе — в документации vStack Center.

Если не получилось​

  • Имена агрегатов изменены. Имя lagg10 жёстко прописано в конфигурации кластерного сервиса, остальные настройки тоже рассчитаны на стандартные имена. Оставляйте lagg10 и lagg20 как есть.
  • MTU выше 9000. Установщик всё равно запишет 9000, а на адаптерах Mellanox больший MTU откатывает интерфейс на 1500. Задавайте 9000, 9216 оставьте коммутатору.
  • Агрегат не собирается. Проверьте, что порты на коммутаторе в режиме LACP active, а не on, и что оба порта узла приходят в одну группу vPC / LACP.
  • ID узла повторяется. Кластер с одинаковыми ID узлов не соберётся. Сверяйте ID с контрольным листом на каждом узле.
  • Имя хоста в другом формате. Генератор конфигурации принимает только q<1–3 цифры>u<3 цифры>. Переустановите узел с правильным именем.
  • Часовой пояс не UTC или нет NTP. Другая временная зона ломает работу гостевых ОС, а без синхронизации времени кластер не запускается. Выбирайте UTC и дайте узлам доступ к NTP.
  • Окно финальной конфигурации «висит». На этапе размещения облачных образов шкалы прогресса нет. Подождите несколько минут, время зависит от скорости носителя и дисков.
  • Узел не дождался остальных. Если за 30 минут iSCSI-сессии со всеми узлами не поднялись, узел прерывает сборку и повторит её при следующей загрузке. Поднимите отстающие узлы, затем перезагрузите тот, что не дождался.

См. также​