VMmanager

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

Кластер — совокупность серверов, расположенных в единой локации. Отличительными чертами таких серверов (узлов кластера) являются расположение и высокая скорость передачи данных между ними. В статье указаны требования к узлам кластера.

Платформа и узел кластера не могут располагаться на одном сервере. Техническая поддержка VMmanager с такой конфигурацией не оказывается.

Гомогенность узлов

Рекомендуем использовать в одном кластере узлы, однородные по настройкам сети, маршрутизации, версиям программного обеспечения. Это обеспечит наилучшие условия для миграции виртуальных машин между узлами кластера.

Платформа не поддерживает работу кластеров, в которых совместно используются узлы с ОС на основе Red Hat (AlmaLinux) и ОС на основе Debian (Astra Linux).

Поддержка виртуализации

Узел кластера KVM должен поддерживать виртуализацию на уровне процессора. Чтобы проверить наличие поддержки для процессоров Intel и AMD, введите команду:

grep -P 'vmx|svm' /proc/cpuinfo

Если вывод команды не пустой, то процессор поддерживает виртуализацию.

Чтобы использовать виртуализацию, убедитесь, что она включена в BIOS сервера.

Аппаратные требования

Узлом кластера должен быть физический сервер со следующими характеристиками:


Минимальные требованияРекомендуемые требования
Процессор2.4 ГГц3 ГГц
Количество ядер4 шт.8 шт.
Оперативная память8 Гб16 Гб
Дисковое пространство1 ТБ2 ТБ

Материнская плата

Рекомендуем использовать серверную материнскую плату. Узел кластера с материнской платой для настольного ПК может работать некорректно.

В случае возникновения проблем с производительностью дисковой подсистемы рекомендуем включить в настройках BIOS режим энергопотребления c максимальной производительностью.

Процессор

Поддерживаются процессоры Intel и AMD с архитектурой x86_64. Процессоры с архитектурой ARM не поддерживаются.

Диск и хранилища

При разбивке диска выделите максимально возможный объём под корневую директорию (/).

Перед добавлением узла в существующий кластер настройте на сервере все хранилища, используемые в кластере. Для кластеров LXD требуется настройка ZFS-хранилища. Подробнее см. в статье LXD.

Программные требования

Операционная система

Требования к операционной системе (ОС) зависят от типа виртуализации и сетевых настроек кластера:


Открытый контурЗакрытый контур

KVMLXDKVM
Коммутация

AlmaLinux 8.6, 8.7, 8.8, 8.9

Astra Linux Special Edition 1.7.4 редакции "Орёл" или "Воронеж"

Astra Linux Special Edition 1.8.1 редакции "Орёл" или "Воронеж"

Ubuntu 20.04

Astra Linux Special Edition 1.7.4 редакции "Орёл" или "Воронеж"

Astra Linux Special Edition 1.8.1 редакции "Орёл" или "Воронеж"

Маршрутизация

AlmaLinux 8.6, 8.7, 8.8, 8.9

Astra Linux Special Edition 1.7.4 редакции "Орёл" или "Воронеж"

Astra Linux Special Edition 1.8.1 редакции "Орёл" или "Воронеж"

конфигурация не поддерживается

Astra Linux Special Edition 1.7.4 редакции "Орёл" или "Воронеж"

Astra Linux Special Edition 1.8.1 редакции "Орёл" или "Воронеж"

IP-fabric

AlmaLinux 8.6, 8.7, 8.8, 8.9

Ubuntu 20.04конфигурация не поддерживается

Минорные версии ОС и версии ядра ОС на узлах кластера могут различаться.

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

Дополнительные сервисы — это все программы, установленные на сервере, которые не входят в стандартный набор ОС и не связаны с работой платформы. Например, дополнительные веб-серверы и СУБД.

Чтобы обеспечить гомогенность системного ПО, рекомендуется периодически обновлять ОС на узлах кластера.

AlmaLinux

Astra Linux

CentOS

ОС CentOS не поддерживается. Если на сервере установлена ОС CentOS, вы можете выполнить миграцию на ОС AlmaLinux 8:

Программное обеспечение

Для корректной работы узла кластера не изменяйте стандартное приветствие командной строки в файле .bashrc.

Чтобы платформа могла подключиться к узлу кластера, на узле должны быть установлены пакеты ПО dmidecode и python3. Если это ПО не входит в состав ОС, установите его вручную.

Отключение службы SELinux

Служба SELinux используется в качестве дополнительного средства безопасности ОС. Рекомендуем отключить службу SELinux, так как она замедляет работу платформы и может помешать её корректной установке.

После отключения SELinux ресурсы сервера останутся защищены с помощью встроенной службы избирательного управления доступом.

Чтобы отключить SELinux:

  1. Проверьте статус службы: 

    sestatus
  2. Если ответ содержит enforcing или permissive:

    1. В файле /etc/selinux/config установите для параметра SELINUX значение disabled: 

      sed -i s/^SELINUX=.*$/SELINUX=disabled/ /etc/selinux/config
    2. Перезагрузите сервер.

Обновление ОС

После обновления ОС на узле кластера перезапустите сервис libvirt:

systemctl restart libvirtd

Системное время

Перед подключением узла системное время должно быть синхронизировано с NTP-сервером. Для этого настройте синхронизацию с помощью ПО:

  • chrony — для ОС AlmaLinux;
  • ntp — для ОС Astra Linux.

Для серверов в дата-центре OVH

При установке ОС через панель управления OVH включите опцию Install original kernel. Для корректной работы серверов кластера используйте оригинальное ядро ОС.

Сетевые настройки

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

  • у каждого сервера должно быть уникальное имя хоста (hostname);
  • в кластерах с типом настроек "Коммутация" и "Маршрутизация" в открытом информационном контуре сервер должен иметь доступ в интернет. Это необходимо для загрузки шаблонов ОС и пакетов ПО из внешних источников;
  • IP-адрес должен находиться на физическом интерфейсе сервера или во VLAN;
  • IP-адрес должен быть статическим и задан через конфигурационный файл сетевого интерфейса (без использования DHCP);
  • если в кластере с типом настроек "Коммутация" для ВМ выделяются IPv6-адреса, один из адресов IPv6-сети должен быть присвоен интерфейсу узла;
  • шлюз по умолчанию должен быть доступен для проверки утилитой ping;
  • имена сетевых интерфейсов не должны содержать букв, отличных от латинских.

Требования к узлам кластера с двумя сетевыми интерфейсами см. в статье Основная и дополнительная сеть.

Если сервер находится в дата-центре Hetzner, не рекомендуем использовать функцию vSwitch. Эта функция ограничивает общее количество MAC-адресов, используемых физическими и виртуальными интерфейсами сервера, до 32.

Если на подключения VLAN назначены IP-адреса
Настройки MTU осуществляются на уровне операционной системы (ОС) узла кластера. Платформа осуществляет поддержку jumbo frame (кадров с MTU более 1500 байт).

Файл /etc/hosts

Убедитесь, что в файле /etc/hosts есть запись для сервера в формате:

<IP-адрес сервера> <hostname сервера>

Файл /etc/resolv.conf

Убедитесь, что в файле /etc/resolv.conf есть записи вида:

nameserver <IP-адрес DNS-сервера>

Если в качестве DNS-сервера указан IP-адрес локальной службы systemd-resolved — 127.0.0.53, то проверьте, что в файле /etc/systemd/resolved.conf указаны адреса DNS-серверов:

DNS=<список_серверов>

Файл /etc/NetworkManager/NetworkManager.conf

Если сервис NetworkManager управляет настройками DNS, он может удалить файл /etc/resolv.conf. Чтобы отключить управление DNS, добавьте в раздел main файла /etc/NetworkManager/NetworkManager.conf строку: 

dns=none

Настройки входящих подключений

KVM-виртуализация

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

  • 22/tcp — сервис SSH;
  • 179/tcp, 4789/udp — виртуальные сети (VxLAN);
  • 5900-6900/tcp — QEMU VNC, SPICE. Если доступ осуществляется только через сервер с VMmanager, диапазон портов должен быть открыт для сети, объединяющей узлы кластера;
    Если вы планируете разместить более 1000 ВМ на узле кластера, выполните инструкции из статьи базы знаний Как увеличить диапазон портов для VNC и SPICE?
  • 16514/tcp — сервис управления виртуальными машинами libvirt;
  • 49152-49215/tcp — сервисы миграции libvirt.

LXD-виртуализация

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

  • 22/tcp — сервис SSH;
  • 179/tcp, 4789/udp — виртуальные сети (VxLAN);
  • 8443/tcp — сервис управления LXD-контейнерами.

Закрытый информационный контур

Чтобы подготовить сервер для закрытого контура, выполните инструкции из статьи Установка в закрытом информационном контуре.