Поделиться через


Балансировка нагрузки между виртуальными машинами

Применимо к: Локальные версии Azure, версии 23H2 и 22H2; Windows Server 2022, Windows Server 2019, Windows Server 2016

Примечание.

Рекомендуемый способ создания виртуальных машин и управления ими в локальной версии Azure версии 23H2 использует плоскость управления Azure Arc. Используйте механизм, описанный ниже, для управления виртуальными машинами только в том случае, если вам нужны функциональные возможности, недоступные в виртуальных машинах Azure Arc.

Ключевым аспектом развертывания Azure Local является капитальные расходы (CapEx), необходимые для перехода в рабочую среду. Обычно рекомендуется добавить избыточность, чтобы избежать недостаточной емкости во время пикового трафика в рабочей среде, но это увеличивает CapEx. Эта избыточность часто требуется, так как некоторые компьютеры в системе размещают больше виртуальных машин (виртуальных машин), а другие компьютеры недостаточно используются.

Балансировка нагрузки виртуальных машин — это функция, которая позволяет оптимизировать использование компьютера в локальных системах Azure. Он идентифицирует слишком зафиксированные компьютеры и переносит виртуальные машины с этих компьютеров на неофиксируемые компьютеры. Политики сбоев, такие как анти-сходство, домены сбоя (сайты) и возможные владельцы учитываются.

Балансировка нагрузки виртуальных машин оценивает нагрузку компьютера на основе следующих эвристики:

  • Текущее давление на память: память является наиболее распространенным ограничением ресурсов на узле Hyper-V.
  • Загрузка ЦП в среднем в течение пяти минут: устраняет превышение нагрузки на любой компьютер в системе.

Как работает балансировка нагрузки виртуальных машин?

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

При добавлении нового компьютера

При присоединении нового компьютера к системе функция балансировки нагрузки виртуальной машины автоматически балансирует емкость с существующих компьютеров на только что добавленный компьютер в следующем порядке:

  1. Давление на память и загрузка ЦП оцениваются на существующих компьютерах в системе.
  2. Определяются все компьютеры, превышающие пороговое значение.
  3. Компьютеры с наибольшим давлением памяти и загрузкой ЦП определяются для определения приоритета балансировки.
  4. Виртуальные машины переносятся (без простоя) с компьютера, превышающего пороговое значение на только что добавленный компьютер в системе.

Изображение, показывающее добавление нового компьютера в систему.

Повторяющаяся балансировка нагрузки

По умолчанию балансировка нагрузки виртуальных машин настраивается для периодической балансировки: давление на память и использование ЦП на каждом компьютере в системе оцениваются для балансировки каждые 30 минут. Ниже приведен процесс действий.

  1. Давление на память и загрузка ЦП оцениваются на всех компьютерах в системе.
  2. Все компьютеры, превышающие пороговое значение, и те, которые ниже порогового значения, определены.
  3. Компьютеры с наибольшим давлением памяти и загрузкой ЦП определяются для определения приоритета балансировки.
  4. Виртуальные машины переносятся (без простоя) с компьютера, превышающего пороговое значение на другой компьютер, который находится под минимальным пороговым значением.

Изображение, показывающее автоматическую балансировку динамической системы

Настройка балансировки нагрузки виртуальной машины с помощью Windows Admin Center

Самый простой способ настроить балансировку нагрузки виртуальных машин — использовать Windows Admin Center.

Настройка балансировки нагрузки виртуальной машины с помощью Windows Admin Center

  1. Подключитесь к системе и перейдите к параметрам инструментов>.

  2. В разделе "Параметры" выберите балансировку нагрузки виртуальной машины.

  3. В разделе "Баланс виртуальных машин" выберите "Всегда для балансировки нагрузки при присоединении к компьютеру" и каждые 30 минут сервер присоединяется к балансировке нагрузки только при соединениях компьютеров или никогда не отключает функцию балансировки нагрузки виртуальной машины. Параметр по умолчанию — Always.

  4. В разделе "Агрессивность" выберите "Низкий" для динамической миграции виртуальных машин, если компьютер загружен более чем на 80 %, средний для миграции при загрузке компьютера более 70 % или высокий для среднего значения компьютеров в системе и миграции, когда компьютер превышает 5 % выше среднего. Значение по умолчанию — Low.

Настройка балансировки нагрузки виртуальной машины с помощью Windows PowerShell

Можно настроить, если и когда происходит балансировка нагрузки с помощью общего свойства AutoBalancerModeкластера. Чтобы управлять балансом кластера, выполните следующую команду в PowerShell, подставив значение из приведенной ниже таблицы:

(Get-Cluster).AutoBalancerMode = <value>
AutoBalancerMode Поведение
0 Выключено
1 Балансировка нагрузки при присоединении компьютера
2 (по умолчанию) Балансировка нагрузки при присоединении компьютера и каждые 30 минут

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

(Get-Cluster).AutoBalancerLevel = <value>
AutoBalancerLevel Агрессивность Поведение
1 (по умолчанию) Низкая Перемещение при загрузке узла более 80 %
2 Средняя Перемещение при загрузке узла более 70 %
3 Высокая Средние компьютеры в системе и перемещение, если узел превышает 5 % выше среднего

Чтобы проверить, как AutoBalancerLevel заданы свойства и AutoBalancerMode свойства, выполните следующие действия в PowerShell:

Get-Cluster | fl AutoBalancer*

Следующие шаги

Дополнительные сведения см. также: