Выбор узла кластера для размещения виртуальной машины (ВМ) является обязательным на этапе её создания.

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

Автоматический выбор узла кластера VMmanager выполняет в соответствии с алгоритмом:

  1. Составляется список узлов кластера. Список сортируется в порядке возрастания количества ВМ, созданных на узле.
  2. Узлы из списка поочерёдно проверяются на соответствие требованиям, пока подходящий узел не будет найден:
    1. Проверяется статус узла кластера.
    2. Проверяется достижение максимального количества ВМ.
    3. Проверяется наличие уведомлений об ошибках на узле кластера.
    4. Анализируется соответствие правилам размещения ВМ.
    5. Проверяется наличие свободных ресурсов и оверселлинг на узле кластера по следующей схеме:
      1. Вычисляется доступный объём свободной оперативной памяти.
      2. Вычисляется достаточно ли оперативной памяти, чтобы установить ВМ без оверселлинга.
      3. Вычисляется объём оперативной памяти с учётом оверселлинга M по формуле M = T * O ÷ 100.

        T — общий объём оперативной памяти;

        O — значение оверселлинга.

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

Проверка статуса

Возможны два варианта статуса: "блокирован" и "разблокирован". В зависимости от статуса узел соответственно запрещён или разрешён для автоматического размещения ВМ. Заблокированный узел исключается из списка узлов.

Узел может быть заблокирован вручную в Настройки кластера → Узлы кластера либо при помощи параметра CreateVmDisableNodeTimer конфигурационного файла панели (по умолчанию /usr/local/mgr5/etc/vmmgr.conf). Этот параметр определяет период исключения узла из списка доступных для автоматического размещения. Указывается в минутах. Если параметр указан, то после создания ВМ на узле этот узел блокируется для автоматического размещения на заданное количество минут. Если установка ВМ завершится раньше заданного периода, то узел разблокируется.

Проверка достижения максимального количества ВМ

При создании узла кластера указывается Максимальное количество виртуальных машин (по умолчанию: не ограничено), который определяет, сколько ВМ может одновременно функционировать на узле. Проверка будет пройдена успешно, если максимальное количество не достигнуто.

Проверка наличия уведомлений об ошибках

Проверка будет пройдена успешно, если узел кластера работоспособен.

Соответствие правилам размещения ВМ

Правила размещения позволяют контролировать распределение ВМ по узлам кластера. Для управления правилами перейдите в Настройки кластера → Правила размещения.

Для создания нового правила нажмите Создать.

Укажите:

  • Приоритет — приоритет правила. Используется для определения порядка выполнения правил. Первыми выполняются списки с наименьшим значением приоритета;
  • Тип признака — выбор типа шаблона, к которому применяется правило:
    • Шаблон ОС;
    • Шаблон VM.
  • Операнд — тип проверки значения:
    • Содержит — проверка заканчивается успешно, если текст в поле Значение найден в шаблоне, указанном в поле Тип признака;
    • Не содержит — проверка заканчивается успешно, если текст в поле Значение не найден в шаблоне, указанном в поле Тип признака.
  • Значение — произвольный текст, на содержание которого проверяется имя шаблона, указанного в поле Тип признака;
  • Узел кластера — выбор узлов кластера, к которым применяется правило. Указывается конкретный узел либо все узлы кластера;
  • Действие — операция, осуществляемая при успешной проверке правила:
    • Добавить узел в список — узел подходит под размещение создаваемой ВМ;
    • Удалить узел из списка — узел не подходит под размещение создаваемой ВМ;
    • Ничего не делать — переход к следующему правилу.
  • Остановить обработку — опция остановки обработки правил. При включении последующие правила обрабатываться не будут.

Проверка наличия свободных ресурсов и оверселлинга

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