10 октября 2023 Время чтения: 2 минуты

Баланс во всём: распределяйте нагрузку между хостами с новым сервисом VMmanager

ISPSystem

Несмотря на то, что виртуализация позволяет разворачивать стабильную инфраструктуру с крайне высокой производительностью, проблема перегруженности узлов встречается часто. Она влечет за собой сбои в работе сервисов, которые на этих узлах размещены. «Балансировщик» от VMmanager позволяет предотвратить проблему: он автоматически отслеживает уровень загруженности физических серверов и распределяет нагрузку между ними, снижая трудозатраты сотрудников. Администратору нужно выставить настройки — остальное делает сервис. Рассказываем подробнее о процессе.

Сбор информации о загруженности узлов

Чтобы понять, что происходит с узлом, «Балансировщик» запрашивает информацию о средней загрузке CPU и RAM за установленный период. Это значение задает сам администратор. Например, если в графе «периодичность проверки» указано 10 минут, то сервис будет запрашивать статистику за последние 10 минут.

Время сбора статистики составляет около одной минуты. Если узлов слишком много, этого времени может быть недостаточно. Тогда «Балансировщик» будет работать только с теми данными, которые успел собрать, и сделает вывод на их основе. Список ВМ на узлах, которые не удалось проверить, попадёт в лог.

Сбор информации о загруженности узлов

Анализ полученной информации, подготовка к миграции

Собрав статистику по узлам, «Балансировщик» поделит узлы на два списка. В первый попадут узлы с высокой загруженностью. По дефолту узел считается перегруженным, если CPU и RAM будут «забиты» на 70%, но эти настройки администратор может изменить самостоятельно. Во втором списке — узлы с небольшой загруженностью. Если узел находится в процессе обслуживания, то в список он не попадет.

Анализ полученной информации, подготовка к миграции

После этого сервис составит еще один список — там окажутся виртуальные машины, которые могли бы быть мигрированы на менее загруженный узел, чтобы снять нагрузку с текущего узла. При этом администратор может оставить определенные ВМ на текущем хосте и не применять к ним действия сервиса.

Если при проверке «Балансировщик» не обнаружит перегруженных узлов или узлов, где достаточно места для переноса ВМ, то в рамках текущего процесса ничего мигрировать не будет.

Через указанное администратором время сервис повторит алгоритм.

Миграция

«Балансировщик» переносит ВМ между узлами с помощью механизма живой миграции. Это значит, что на протяжении всего процесса виртуальные машины будут доступны.

Миграция узлов с использованием «Балансировщика» возможна только в рамках кластера, а вот между кластерами — нет.

О том, как настраивать сервис и как им управлять, мы рассказали в нашей документации для администраторов.