Кластер — группа обслуживающих узлов, на которых запускаются виртуальные машины. В качестве узлов кластера выступают физические серверы. Серверы, которые планируется использовать в качестве узлов требуется предварительно подготовить.

В статье описаны требования к серверам, которые планируется использовать в качестве узлов кластера.

Системные требования


Поддерживаемые операционные системы (ОС):

  • CentOS 7 x64 (рекомендуется).

Используйте "чистую" операционную систему: без сторонних репозиториев и установленных дополнительных сервисов.

Обратите внимание!

Рекомендуем использовать на сервере с панелью управления последнюю доступную минорную версию ОС.

Не рекомендуем обновлять операционную систему узла кластера со сменой мажорной версии.

На все узлы кластера установите одну и ту же версию ОС. ОС должны совпадать до минорной версии. Панель управления не позволит добавить в кластер узел, если его ОС отличается от той, что установлена на сервере с VMmanager (мастер-сервере). Например, нельзя добавить в кластер узел с CentOS 7.6, если на мастер-сервере — CentOS 7.5.

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


Основные требования

К основным требованиям относятся следующие:

  • все узлы кластера и сервер с панелью управления должны находиться в одном сегменте сети;
  • сервис SSH должен слушать на порту 22;
  • ihttpd не должен слушать все адреса (*);
  • достаточно 100-150 Гб под корневой раздел;
  • в сети между узлами кластера должен быть разрешен multicast. Убедитесь, что на коммутаторе, к которому подключены сервера, неактивна опция "igmp snooping". Данная опция активирует протокол, блокирующий multicast. Между узлами и хранилищем multicast не нужен;
  • защита от multicast шторма должна быть отключена;
  • все серверы должны обладать как минимум двумя Ethernet-подключениями: на одном должен быть настроен "белый" IP-адрес, на втором ­— внутренняя сеть. Эта внутренняя сеть объединена в один VLAN;
  • при использовании сетевых хранилищ учитывайте необходимую для них пропускную способность сети;

Настройка брандмауэра

Разрешите входящие подключения на порты:

  • 22/tcp — сервис SSH, со всех узлов кластера, из публичной сети по необходимости;
  • 111/tcp — rpcbind для NFS, со всех узлов кластера;
  • 662/tcp,udp — pftp для NFS, со всех узлов кластера;
  • 892/tcp,udp — NFS, со всех узлов кластера;
  • 1500/tcp — ihttpd, для доступа к веб-интерфейсу панели из публичной сети и для доступа с узла панели к сервисам панели на узлах кластера;
  • 1515/tcp — vmwatch-master мониторинг состояния VM, со всех узлов кластера на сервер с панелью;
  • 2049/tcp,udp — NFS, со всех узлов кластера;
  • 32803/tcp — NFS, со всех узлов кластера;
  • 32769/udp — NFS, со всех узлов кластера;
  • 5900-6900/tcp — QEMU VNC. Если доступ к VNC осуществляется только через панель, диапазон портов должен быть открыт для сети, объединяющей узлы кластера;
  • 15900-16900/tcp — websockify, трансляция QEMU VNC для веб-интерфейса noVNC, доступ из публичной сети;
  • 49152-49261/tcp — сервисы миграции libvirt, со всех узлов кластера;
  • 5404-5405/udp — corosync multicast, со всех узлов кластера. Может варьироваться в зависимости от настроек облачных функций в панели;
  • 21064/tcp — dlm, со всех узлов кластера;
  • 41966-41969/tcp — rgmanager, со всех узлов кластера;
  • 50006-50009/tcp — ccsd, со всех узлов кластера;
  • 50007/udp — ccsd, со всех узлов кластера.

Рекомендации по настройке дисковой подсистемы


При установке CentOS 7 на узлы кластера рекомендуем в качестве файловой системы выбирать XFS.

Шаблоны ОС, которые использует VMmanager для установки на виртуальные машины, по объёму занимают около 80 Гб (большие по размеру шаблоны Windows, 10-15 Гб каждый шаблон; Linux шаблоны требуют порядка 100 Мб каждый). Шаблоны располагаются в директории /nfsshare/, которая дублируется на каждый узел кластера. Раздел /nfsshare/ должен быть порядка 60-80 Гб, однако если не планируется использовать Windows на гостевых машинах или в дальнейшем создавать собственные шаблоны операционных систем, то размер раздела может быть меньше. /nfsshare/ не обязательно отдельный раздел, обычно это директория корневого раздела.

Если планируете использовать механизм резервного копирования, в корневом разделе должно быть дополнительное свободное место из расчёта 2,5*<максимальный размер диска виртуальной машины>.

Таким образом, рекомендуем выделить 100-150 Гб под корневой раздел + объём под резервные копии. Остальной объём жёсткого диска — под раздел /vm, если в качестве хранилища планируется использовать локальную файловую систему, либо под linux-lvm раздел, если в качестве хранилища планируется использовать локальный LVM.