Можно ли распределить виртуальные машины так, чтобы ресурсы утилизировались максимально оптимальным образом? Рассказываем, как сделать это в нашем VMmanager.
В платформе управления виртуализацией VMmanager доступна базовая настройка распределения ВМ на уровне кластера. Но пользователи могут настроить и более сложные фильтры для максимально эффективной утилизации. Посмотрим, как это устроено и как с этим работать.
Базовые настройки
Представим, что перед вами стоит задача распределить ВМ по узлам в определенных условиях. Вот они:
- лицензии Windows только на один «железный» сервер;
- на сервере для «внушительных» ВМ есть несколько мощных процессоров, много оперативной памяти, а также доступны быстрые NVME-диски;
- кроме того, вам доступно несколько серверов для небольших ВМ.
Базовая настройка распределения виртуальных машин делается буквально в несколько кликов. Нужно просто зайти в общие настройки кластера, открыть соответствующий раздел и выбрать нужный тип распределения. Запутаться невозможно — каждая опция проиллюстрирована простой и понятной схемой.
Если вы выберете равномерное распределение, виртуальные машины будут создаваться по очереди на каждом узле. При последовательном создаваемые ВМ сначала заполнят один узел, затем начнут создаваться на следующем и так далее.
Но это лишь базовые опции. В VMmanager можно создавать и более продвинутые политики распределения ВМ. Делается это путем настройки фильтров.
Распределение виртуальных машин с помощью фильтров
Сложную фильтрацию можно настроить в карточке узла. Если быть точнее — во вкладке «Настройки распределения VM».
По умолчанию виртуальные машины создаются на любом узле, где достаточно ресурсов.
Пример. У вас есть три узла с 16 Гб RAM и 1 Тб пространства на диске.
- На одном из них — назовем его узлом №1 — уже занято 15 Гб RAM.
- На узле №2 занято 9 Гб RAM и 500 Гб диска.
- На узле №3 — 7 Гб RAM и 600 Гб диска.
Если вы захотите создать виртуальную машину с 2 Гб RAM, сервер №1 будет исключен, и ВМ создастся на узле №2 или №3.
VMmanager позволяет настраивать расширенную фильтрацию:
- по количеству RAM;
- по количеству виртуальных ядер;
- по объему диска;
- по конфигурациям виртуальных машин;
- по тегам операционных систем.
Давайте посмотрим, как это устроено.
Например, на узел №2 мы установили фильтр по тегу операционной системы — windows.
- При создании ВМ с AlmaLinux узел №2 будет исключен, вместо него будут использован узел №1 или №3.
- При создании ВМ c Windows Server, узел №2 не будет исключен. ВМ создастся на одном из трех имеющихся узлов.
Есть ли возможность ли исключить создание ВМ с Windows на узлах №1 и №3?
Конечно! Достаточно «накинуть» фильтры по операционной системы — !windows. Доступны и другие теги ОС — например, freebsd, centos.
Все фильтры можно гибко «миксовать», объединяя их через логическое И (&&). Можно указать и несколько условий через логическое ИЛИ (||).
Синтаксис очень простой, разобраться будет совсем не трудно. Обратите внимание на примеры:
- (cpu_number > 4 || ram_mib > 2048) && hdd_gib > 100
- os_tag = linux|bsd && ram_mib > 1024
Если нужна дополнительная информация по фильтрам, советуем обратиться к документации по VMmanager. На этой странице подробно описана работа с ними.
Хотите попробовать VMmanager? Запросите демо на странице платформы или закажите бесплатную триал-версию!