VMmanager

Управление узлами кластера

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

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

Подключение узла

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

При подключении узла к кластеру LXD вся информация в ZFS-пуле узла будет уничтожена. 

Чтобы подключить узел к кластеру:

  1. Перейдите в раздел Узлы  кнопка Подключить узел
  2. Укажите Общие настройки:
    1. Название узла кластера или нажмите генерировать для формирования случайного имени.
    2. Кластер, к которому будет подключён узел.
    3. Произвольное Примечание.
  3. Укажите настройки Подключения:
    1. IP-адрес узла.
    2. Порт для SSH. Значение по умолчанию — 22.
    3. Имя Пользователя. Если на сервере для узла установлена ОС Astra Linux, укажите имя пользователя, которое вы использовали при подготовке сервера. Для других ОС используйте учётную запись root.
    4. Введите Пароль пользователя или добавьте на сервер публичный SSH-ключ платформы. Чтобы добавить SSH-ключ, нажмите Хочу использовать публичный ssh-ключ, скопируйте ключ и добавьте его в файл /<имя_пользователя>/.ssh/authorized_keys на сервере.

      Все подключения платформы к узлу кластера выполняются только с авторизацией по SSH-ключу.

      Если при добавлении узла указать пароль пользователя, то платформа подключится к серверу с этим паролем и добавит свой публичный SSH-ключ в файл /<имя_пользователя>/.ssh/ authorized_keys. Не удаляйте этот ключ и не отключайте авторизацию по SSH-ключу после добавления узла. Это нарушит работу платформы.

  4. Для кластера с типом сетевых настроек "Коммутация" укажите Настройки сети:
    • Автоматическое создание бриджа — платформа создаст на сервере бридж, который будет использоваться по умолчанию при создании ВМ. IP-адрес узла будет перенесён с текущего интерфейса в созданный бридж.
    • Ручное создание бриджа — для создания ВМ на узле нужно будет самостоятельно создать бридж. Подробнее о бриджах см. в статье Настройки сети на узле кластера.

      Выберите ручное создание бриджа, если:

      • вы планируете использовать VLAN-интерфейс для IP-адреса сервера;
      • сервер имеет нестандартную сетевую конфигурацию — нет единого интерфейса, через который проходит весь трафик.

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

  5.  Укажите настройки Распределения VM на узле:

    1. Ограничение количества vCPU — максимальное количество vCPU, которое можно выделить для ВМ на этом узле. Значение параметра по умолчанию — количество CPU на сервере, умноженное на коэффициент оверселлинга в кластере. При достижении этого лимита будет запрещено создание ВМ на узле и миграция ВМ на этот узел. Если лимиты не ограничены, ВМ будут создаваться, пока это позволяют ресурсы узла.
    2. Коэффициент оверселлинга RAM. Подробнее см. в статье Оверселлинг.
    3. Ограничение количества VM. При достижении этого значения будет запрещено создание ВМ на узле и миграция ВМ на этот узел. Если ограничение не устанавливать, ВМ будут создаваться, пока это позволяют ресурсы узла.
    4. Фильтры распределения — выберите Параметры VM, которые будут создаваться на узле кластера. Подробнее см. в разделе Настройки распределения ВМ.
    5. Для кластера с типом сетевых настроек "IP-fabric" укажите IPv6-адрес сервера.
    6. Для кластера с типом сетевых настроек "Маршрутизация" укажите IP под создание VM. Вы можете ввести отдельные адреса или задать подсеть адресов по префиксу маски. Ввод каждого адреса и подсети начинайте с новой строки.
  6. Укажите настройки Выполнения скриптов:
    1. Нажмите кнопку Выбрать скрипты.
    2. Выберите в списке скрипты, которые нужно запустить при подключении узла.
    3. В колонке Приоритет запуска выберите порядок выполнения скриптов. Чтобы установить приоритет запуска для скрипта, перетащите его в нужную позицию.
    4. Нажмите кнопку Выбрать X скриптов. Название кнопки будет содержать количество запускаемых скриптов.


      Если для скрипта включена опция Автовыполнение на кластерах, вы не можете отключить его запуск и изменить приоритет.
  7. Нажмите кнопку Подключить узел.
  8. Если вы выбрали кластер с двумя сетевыми интерфейсами, выберите интерфейс для основной и дополнительной сети. Подробнее см. Основная и дополнительная сеть. Нажмите Продолжить.

Пример подключения

На сервере будет установлено необходимое программное обеспечение и выполнены необходимые настройки.

Чтобы увеличить количество возможных сетевых соединений, VMmanager на узле кластера изменяет значения параметров net.nf_conntrack_max и net.netfilter.nf_conntrack_max на 1048576. Подробнее см. Как изменить параметры netfilter?

Дополнительные настройки для узла с ОС Astra Linux

После добавления узла настройте права пользователя для подключения:

  • для ОС с уровнем защищённости "Орёл" выполните на узле команду: 
    sudo usermod -a -G astra-admin,kvm,libvirt,libvirt-qemu,libvirt-admin <username>
    Пояснения к команде
  • для ОС с уровнем защищённости "Воронеж" выполните на узле команды:
    sudo usermod -a -G astra-admin,kvm,libvirt,libvirt-qemu,libvirt-admin <username>
    sudo pdpl-user -i 63 <username>
    Пояснения к командам

Карточка узла кластера

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

  • статус узла;
  • тип виртуализации — KVM или LXD;
  • CPU — загрузка процессора;
  • RAM — потребляемый объём оперативной памяти;
  • Storage — потребляемый объём диска;
  • коэффициенты оверселлинга;
  • информация о подключённых хранилищах;
  • Всего VM — общее количество ВМ на узле;
  • количество ВМ с определённым статусом;
  • Прогноз по VM — максимально возможное количество ВМ. Значение рассчитывается динамически и зависит от свободных ресурсов узла;
  • имя кластера;
  • операционная система;
  • IP-адрес узла;
  • Аптайм — время непрерывной работы узла;
  • Службы — запущенные службы;
  • примечание.

Возможные статусы узла:

СтатусОписание
ПодключенУзел находится в рабочем состоянии
Подготовка узлаПлатформа подготавливает узел к подключению
Настройка виртуализацииНа узле выполняется установка ПО виртуализации
Настройка мониторинга На узле выполняется установка системы мониторинга
В режиме обслуживанияУзел находится в режиме обслуживания
ПоврежденПО на узле работает некорректно
НедоступенПлатформа не может подключиться к узлу
УдаленУзел удалён

В отказоустойчивом кластере сервисы ha-agent на узлах могут принимать следующие статусы:

  • рабочие:
    • Мастер-узел — узел в рабочем состоянии и выбран мастером;
    • Активен — узел в рабочем состоянии и является участником либо в промежуточном рабочем состоянии (выборы или ожидание обновления);
  • нерабочие:
    • Изоляция по сети — узел недоступен по сети, но у узла есть доступ к хранилищу. Статус устанавливается, если узел недоступен для сервисов ha-agent на других узлах кластера;
    • Нет связи с хранилищем — у узла нет доступа к хранилищу, но узел доступен по сети;
    • Недоступен — узел недоступен по сети и у него нет доступа к хранилищу. Статус устанавливается, если у платформы нет доступа к узлу;
    • Исключен из HA-кластера — узел недоступен по сети, но имеет доступ к хранилищу. ВМ узла временно исключены из кластера, их перенос не выполняется;
  • специальные:
    • Неизвестный статус — точный статус узла неизвестен. Например, отказоустойчивость находится в процессе включения;
    • Проблема с подключением HA — задача включения отказоустойчивости на узле завершилась с ошибкой.

Интерфейс карточки узла кластера

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

Повторное подключение узла

Если ПО на узле работает некорректно, платформа устанавливает для него статус "Поврежден". Вы можете подключить проблемный узел повторно. Для этого:

  1. На сервере с платформой изучите лог-файл с ошибками подключения /var/log/node_create/{node_id}.log. Устраните проблемы, не позволяющие добавить узел.
  2. В разделе Узлы в строке с проблемным узлом нажмите на сообщение в столбце Статус → кнопка Переподключить узел.

Изменение параметров подключения

Если на узле кластера изменился IP-адрес и/или порт SSH, VMmanager потеряет соединение с узлом. Чтобы восстановить подключение:

  1. Перейдите в Узлы → выберите узел → меню Изменить параметры подключения.
  2. Укажите IP-адрес узла.
  3. Укажите SSH-порт.
  4. Нажмите Подключиться к узлу.

Изменение SSH-ключа платформы

Чтобы изменить SSH-ключ платформы:

  1. Подключитесь к серверу с платформой по SSH. Подробнее о подключении по SSH см. в статье Настройка рабочего места.
  2. Создайте резервную копию платформы на случай возможных сбоев: 
    vm backup
  3. Обновите приватный SSH-ключ платформы:
    docker exec -it vm_box curl 'input:1500/vm/v3/ssh_key_replace' -X POST -H 'internal-auth: on' --data-raw '{}'
  4. Перезапустите платформу: 
    vm restart
    После перезапуска платформа удалит на узлах кластера старые публичные SSH-ключи и скопирует новые. 
    При замене SSH-ключей на узлах кластера перезапустятся службы hawatch, node_alert и monitor.

Логи обновления приватного SSH-ключа сохраняются в файл /var/log/node_ssh_key_replace.log в контейнере vm_box.

SSH-ключи сохраняются в директорию /opt/ispsystem/vm/etc/.ssh/ в контейнере vm_box. Файлы со старыми ключами сохраняются с расширением .bak.

Настройки распределения ВМ

Вы можете задать настройки распределения ВМ по узлам. Например, чтобы на одном узле создавались только ВМ с ОС семейства Linux, а на другом — только с ОС Windows. Платформа сможет создавать ВМ только на тех узлах, настройки распределения которых соответствуют параметрам ВМ. Если подходящий узел не будет найден, то ВМ не будет создана.

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

Чтобы задать настройки распределения:

  1. Перейдите в Узлы → выберите узел → Настройки распределения VM.
  2. Укажите Коэффициент оверселлинга RAM. Подробнее см. в статье Оверселлинг.
  3. Укажите Ограничение количества VM максимальное количество ВМ на узле.
  4. Укажите Ограничение количества vCPU — максимальное количество vCPU, которое можно выделить для ВМ на этом узле.
  5. Выберите Параметры VM для фильтров распределения:
    • Теги ОС — теги шаблонов операционных систем; 

      У некоторых ВМ может не быть тегов ОС. Например, если ВМ создана без ОС или из ISO-образа. Для таких ВМ фильтры работают следующим образом:

      • если фильтр проверяет совпадение с тегом, то ВМ не может быть размещена на этом узле;
      • если фильтр проверяет несовпадение с тегом (значение фильтра задано в формате "!some_tag"), то ВМ может быть размещена на этом узле.
    • Конфигурации — названия конфигураций;
    • Ресурсы RAM — объём оперативной памяти;
    • Ресурсы Storage — объём диска;
    • Ресурсы vCPU — количество виртуальных процессоров;
    • Сложный фильтр — условие с несколькими параметрами.
      При вводе условий используйте синтаксис фильтров. Если нужно задать дополнительное условие, нажмите Добавить фильтр. Чтобы удалить условие, нажмите .
      Если вы зададите несколько условий, они объединятся через логическое "И". То есть, платформа исключит узлы кластера, которые не удовлетворяют хотя бы одному из условий.
  6. Нажмите Сохранить.

 

Пример настройки фильтров распределения

Чтобы настроить распределение ВМ на нескольких узлах кластера:

  1. Перейдите в Узлы → выберите нужные узлы.
  2. В нижнем меню нажмите Настройки распределения VM.
  3. В открывшемся окне настройте Фильтры распределения VM.
  4. Нажмите Сохранить.

    Пример настройки фильтров распределения

Запрет на создание ВМ

Чтобы запретить пользователям создавать виртуальные машины на узле кластера:

  1. Перейдите в Узлы →меню Запретить создание VM.
  2. Нажмите Запретить.

Чтобы отменить запрет:

  1. Перейдите в Узлы → меню Разрешить создание VM.
  2. Нажмите Разрешить.
Дата последнего обновления статьи: 24.06.2025. Статья подготовлена техническими писателями ISPsystem