Pull to refresh
111.13
Cloud4Y
#1 Корпоративный облачный провайдер

Эффективное энергопотребление в инфраструктурах Hyper-V

Reading time 8 min
Views 4.2K
Original author: Brien Posey

Обсуждения проблемы управления электропитанием — это что-то странное в контексте технологии Hyper-V, не так ли? В конце концов, виртуальные серверы работают на виртуальных аппаратных средствах, тем не менее, даже при таком раскладе затраты на электроэнергию и охлаждение составляют большую часть бюджета, поэтому есть смысл подумать о том, как используются эти ресурсы существуют ли какие-либо параметры, которые можно изменить.



Планы питания Windows


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

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

Для тестирования мы создали новую виртуальную машину под управлением Windows Server 2012 R2 на сервере Hyper-V, который также работает под управлением Windows Server 2012 R2. Затем скачали бесплатную программу для бенчмаркинга NovaBench (рис. 1). До начала анализа все остальные ВМ были отключены, чтобы не исказить результаты теста.


Рисунок 1. Исследование планов питания с NovaBench.

Windows Server 2012 R2 использует «Сбалансированный» план электропитания по умолчанию. В первом тесте тестировались планы «Экономии энергии», «Сбалансированный» и «Высокопроизводительный», настраивая их на уровне виртуальной машины. Поскольку NovaBench предлагает множество различных тестов, было решено запустить полный набор тестов и зафиксировать общий балл и тестовый балл процессора. Более высокие баллы отражают более высокую производительность.

При получении первых показателей (см. табл. 1) мы заметили, что баллы постепенно снижались с каждым пройденным тестом независимо от того, какой план электропитания используется. После нескольких проверок было обнаружено, что это вызвано Windows Update, которые были отключены до начала анализа.


Таблица 1 теста 1: Планы питания виртуальной машины

Полные результаты испытаний для плана энергосбережения на рисунке 2.


Рис. 2. Результаты тестирования виртуальной машины, настроенной на использование энергосберегающей схемы питания.

Для второго теста (Таблица 2), были проверены те же самые планы питания, но на этот раз настроенные на уровне хоста. ВМ была настроена на использование сбалансированного плана, и показатели собирались внутри ВМ.


Таблица 2 тест 2: Планы питания гипервизора

Результаты этих тестов довольно интересны. Когда режим питания на уровне ВМ был скорректирован до высокопроизводительного, это на самом деле привело к более низкому баллу (вероятно, в результате фонового системного процесса, выполняющего какую-то задачу). Тем не менее, результаты процессора были практически идентичными по всем планам питания.

Когда план питания был настроен на уровне гипервизора, произошло огромное падение производительности при включении режима экономии энергии, и небольшое повышение производительности при включении высокопроизводительного режима.

Кстати, план питания может быть изменен при открытии панели управления и переходе к показателям «Оборудование/Параметры энергопотребления». Стоит отметить, что, как правило, предпочтительнее настраивать план электропитания на уровне групповой политики. Вы можете найти необходимые настройки в разделе Конфигурация компьютера | Административные шаблоны | Система | Управление питанием (Computer Configuration| Administrative Templates | System | Power Management). Параметр, который вам нужен, это «Выбрать» активную схему питания, как показано на рисунке 3.


Рисунок 3. Использование групповых политик для управления планом энергопотребления

При реализации на уровне родительской операционной системы план питания определяет, сколько энергии сервер будет потреблять, а также влияет на производительность сервера. В этой связи возникает ряд вопросов:

  1. Компенсирует ли затраты преимущество от использования большей мощности?
  2. Эта высокая производительность подходит для любой нагрузки?
  3. Есть ли способ использовать меньше энергии, не отказываясь от высокой производительности?

Поскольку на первые два вопроса не всегда можно быстро найти ответы, есть несколько различных стратегий, которые могут быть использованы для снижения энергопотребления при сохранении высокого уровня производительности. Стоит отметить, что обе эти стратегии требуют наличия System Center Virtual Machine Manager (VMM), поскольку требуемая функциональность отсутствует в не существует в Hyper-V Manager или в операционной системе Windows.

Использование групп хостов


Один вариант для управления потреблением мощности Hyper-V является использование групп хостов VMM. Группы хостов являются не более чем набором серверов хостов и кластеров хостов.

Как известно, можно сгруппировать серверы в Active Directory и назначать разные групповые политики для каждой группы. Таким образом, можно назначить сбалансированный план питания для одной группы хостов Hyper-V и высокопроизводительный план для другой группы. После этого можно создать две соответствующие отдельные группы хостов в VMM. Затем можно поместить хосты или кластеры Hyper-V в соответствующие группы, исходя из их групповых политик.

После того, как хосты Hyper-V распределены в группы, можно начать перемещение виртуальных машин исходя из потребностей производительности. Востребованные виртуальные машины, такие как SQL-серверы, вероятно, должны находиться на хосте, использующем высокопроизводительный план, в то время как менее требовательные виртуальные машины, такие как файловые серверы или серверы DHCP, могут быть размещены на хостах со сбалансированным планом электропитания или даже энергосберегающем.

Такое распределение можно легко организовать во многих компаниях, поскольку это общепринятая политика — организовывать группы хостов на базе аппаратных возможностей. Например, нам встречалась компания, использующая группу хостов под названием Gold Tier (или нечто подобное), которая содержит самые высокопроизводительные хосты виртуализации и используется для наиболее требовательных виртуальных машин. Добавление соответствующего плана питания для серверов, включенных в такую группу хостов, довольно простая задача.

Оптимизация энергопотребления


Второй способ, с помощью которого можно контролировать потребление энергии Hyper-V, это функция VMM «Оптимизации питания». Основная идея довольно проста: во многих компаниях есть определенное время дня (или ночи), когда нагрузки относительно небольшая. В это время можно выполнять динамическую миграцию виртуальных машин на альтернативные хосты Hyper-V узлов с целью облегчения некоторых серверов. При этом пустые хосты можно отключать, пока в них не возникнет необходимость. В такие моменты хосты могут быть переведены в состояние бэкапа, а нагрузка может быть перераспределена для эффективного использования имеющихся ресурсов.

Есть несколько предпосылок, которые должны быть выполнены для использования оптимизации энергопотребления. Во-первых, вам понадобится подходящий отказоустойчивый кластер. Как правило, кластеру понадобится не менее пяти хостов, но можно использовать и 4, если кластер был создан с помощью VMM. Причина в том, что оптимизация питания предназначена для удерживания кластера от потери кворума. При таком раскладе она будет держать минимальное количество хостов кластера онлайн, плюс один дополнительный узел (на случай отказа).

Как правило, наименьшее число хостов, которые могут поддержать эту модель, пять. В пяти-узловом кластере по крайней мере три узла должны оставаться онлайн для сохранения кворума. При добавлении дополнительного хоста, который будет оставаться онлайн в случае сбоя, количества хостов, необходимых в состоянии онлайн, вырастает до четырех. Следовательно, пяти-узловой кластер является самым маленьким кластером, который может извлечь выгоду из оптимизации питания с одним исключением: если кластер был создан с помощью VMM, он может использовать диск вместо хоста. Из-за требований узла, более крупные кластеры, как правило, получают наибольшую выгоду от энергосбережения.

Второе требование заключается в том, что узлы кластера должны быть оборудованы контроллером управления основной платой (Baseboard Management Controller — BMC). Контроллер обеспечивает внеполосное управление узлом. Это механизм, который позволяет хосту отключаться и запускаться снова без участия администратора.

В Microsoft настроить функции энергосбережения легко: откройте консоль VMM, затем найдите группу узлов, содержащих кластер, для которого вы хотите включить оптимизацию энергопотребления. Далее щелкните правой кнопкой мыши на группу хостов и выберите команду «Свойства» в контекстном меню. Когда вы это сделаете, консоль покажет окно «Свойства» группы хостов.

Параметры оптимизации питания расположены на вкладке «Dynamic Optimization» (динамическая оптимизация). Динамическая оптимизация — это функция VMM, которая автоматически выполняет балансировку нагрузки виртуальных машин, работающих в кластере хостов. В нижней части окна находится флажок, с помощью которого можно включить функции энергосбережения. Этот флажок недоступен по умолчанию, но можно включен с помощью выбора опции автоматического переноса виртуальных машин для распределения рабочей нагрузки, как показано на рисунке 4.


Рисунок 4. Включите автоматическую балансировку нагрузки перед включением оптимизации потребления энергии.

Перед включением функции энергосбережения следует уделить внимание двум параметрам. Во-первых, настройка «Агрессивность», показанная на рис. 4, как правило, должна быть установлена на среднем уровне. Использование более агрессивных оптимизаций приведет к более сбалансированной рабочей нагрузке, но может вызвать Live Migrations, которые будут происходить так часто, что в итоге повлияют на производительность.

Другой параметр — это частота балансировки нагрузки. Это число определяет, как часто проверяет VMM, нуждаются ли виртуальные машины в Live Migrations. Причина, почему вы должны обратить внимание на это значение, в том, что оно также применяется для оптимизации питания. Когда узлы обесточены в результате функции оптимизации мощности, VMM по умолчанию проверяет каждые 10 минут, нужно ли вернуть узлы в состояние онлайн.

Если вы нажмете кнопку «Параметры», показанную на рисунке 4, вы попадете в диалоговое окно «Настройки расписания оптимизации энергопотребления», показанное на рисунке 5. Как вы можете видеть, это позволяет настроить расписание оптимизации энергопотребления и соответствующий набор пороговых значений.


Рисунок 5. Настройка расписания оптимизации энергопотребления

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

Экономия энергии


Управление питанием является проблемой для крупных и мелких центров обработки данных, потому что питание и охлаждение, как правило, составляют значительный процент от общего ИТ-бюджета. Стоит потратить время, чтобы разработать план управления питанием для хостов Hyper-V в каждой компании, чтобы получить потенциал для снижения потребления энергии и снижения эксплуатационных расходов в конечном итоге.

Tags:
Hubs:
+2
Comments 1
Comments Comments 1

Articles

Information

Website
www.cloud4y.ru
Registered
Founded
2009
Employees
51–100 employees
Location
Россия
Representative