Снижение фоновой активности виртуальных машин Hyper-V
Организации стремятся максимизировать окупаемость инвестиций в серверное оборудование за счет максимальной плотности виртуальных машин. Идея этой концепции заключается в том, что чем больше виртуальных машин может разместить хост Hyper-V, тем ниже стоимость оборудования для каждой виртуальной машины. Одна из лучших вещей, которую может сделать организация, если она хочет увеличить плотность своих виртуальных машин, — это уменьшить фоновую активность. Фоновая активность увеличивает требования виртуальной машины к памяти и ЦП, а также может увеличить количество операций ввода-вывода в секунду, производимых виртуальной машиной.
Есть несколько вещей, которые вы можете сделать, чтобы уменьшить фоновую активность ваших виртуальных машин. Большинство (но не все) методов, которыми я с вами поделюсь, очень незначительно влияют на потребление ресурсов виртуальной машиной. Когда вы комбинируете эти методы и применяете их к большому количеству виртуальных машин, изменения в совокупности могут иметь большое значение.
Работа с рабочим столом Windows
Одна из наиболее эффективных вещей, которую вы можете сделать (если вы еще этого не сделали), — это удалить возможности рабочего стола Windows с ваших виртуальных машин Hyper-V. Имейте в виду, что удаление Windows Desktop Experience не лишает вас возможности управлять Windows из графического интерфейса. Вы можете просто установить инструменты управления на другой компьютер (например, на рабочий стол Windows) и управлять Windows удаленно, а не напрямую через консоль виртуальной машины.
Планировщик заданий
Еще одна вещь, которую вы можете сделать, чтобы уменьшить потребление аппаратных ресурсов виртуальной машиной, — это отключить любые запланированные задачи, которые не нужны конкретно. Операционная система Windows включает в себя планировщик заданий и планирует периодически запускать десятки автоматических задач. Если вы посмотрите на изображение ниже, вы увидите, что в этой конкретной системе определено 70 задач, и 54 из этих задач в настоящее время включены. Задачи, созданные Microsoft, обычно необходимы для поддержания работоспособности операционной системы, но могут быть и другие задачи, которые можно отключить.
Экранная заставка
также рекомендуется убедиться, что заставка отключена как для основной операционной системы, так и для виртуальных машин. Экранные заставки потребляют циклы ЦП, которые можно было бы лучше использовать для других целей.
Центр обновления Windows
Это может показаться немного нелогичным с точки зрения потребления ресурсов, но важно убедиться, что вы регулярно применяете все доступные обновления через виртуальные машины Windows. С одной стороны, процесс обновления потребляет память и циклы ЦП, а также генерирует операции ввода-вывода в секунду. Казалось бы, это идет вразрез с целью снижения потребления ресурсов. Не говоря уже о том, что обновления часто приводят к раздражающим перезагрузкам.
Причина, по которой так важно применять все последние обновления (помимо последствий для безопасности), заключается в том, что обновления часто включают исправления ошибок и настройки, которые помогают Windows работать более эффективно. Возможно, что более важно с точки зрения Hyper-V, Центр обновления Windows поддерживает актуальность служб интеграции Hyper-V. Запуск последней версии служб Integration Services помогает обеспечить наиболее эффективное взаимодействие виртуальной машины с базовым оборудованием.
Виртуальное оборудование
Еще одна вещь, которую вы можете сделать, чтобы свести к минимуму ненужное потребление аппаратных ресурсов, — это просмотреть аппаратные ресурсы, выделенные вашим виртуальным машинам. В частности, есть четыре вещи, на которые вам нужно обратить внимание.
Первое, что вам нужно проверить, это объем памяти, выделенный каждой виртуальной машине. Если вы пытаетесь максимально увеличить плотность виртуальной машины, может возникнуть соблазн сэкономить на выделении памяти, но вашим виртуальным машинам необходимо иметь достаточно памяти для выполнения соответствующих рабочих нагрузок. Виртуальная машина, которой было выделено слишком мало памяти, может вызвать скачки ЦП и повышенный спрос на IOPS хранилища. Конечно, вы не хотите тратить память впустую, выделяя больше памяти, чем нужно вашим виртуальным машинам. Наилучший вариант — настроить виртуальные машины на использование динамической памяти, а затем использовать системный монитор, чтобы убедиться, что виртуальные машины не страдают от чрезмерной нехватки памяти. Недавно я написал статью здесь, в TechGenix, на эту тему.
Второе, что вы должны сделать при просмотре своего виртуального оборудования, — это найти (и удалить) любые ненужные аппаратные ресурсы. Например, администратор, которому необходимо установить приложение на виртуальную машину, может создать виртуальный DVD-привод, который сопоставляется с файлом ISO, содержащим установочный носитель. Хотя нет ничего плохого в установке приложения таким образом, важно помнить об удалении виртуального DVD-привода, когда он больше не нужен. Это помогает высвободить системные ресурсы, которые можно использовать в другом месте.
Третье, на что следует обратить внимание, — это виртуальные машины, использующие эмулированные сетевые адаптеры. В большинстве организаций действительно редко можно найти виртуальную машину, использующую эмулируемый сетевой адаптер. Когда-то было необходимо использовать эмулируемый сетевой адаптер на виртуальных машинах, отличных от Windows, и на виртуальных машинах, работающих под управлением более старых версий Windows. Если в вашей организации есть старые виртуальные машины, возможно, они все еще используют эмулированные сетевые адаптеры, даже если гостевые операционные системы были обновлены.
Наконец, посмотрите, сколько виртуальных процессоров использует каждая виртуальная машина. Это нелогично, но один из способов увеличить плотность виртуальных машин — назначить один виртуальный ЦП каждой ВМ, если только на ВМ не запущено приложение, для которого требуются дополнительные ЦП. Это связано с тем, что планирование потоков для запуска на нескольких виртуальных ЦП может быть сопряжено со значительными накладными расходами. Конечно, если ресурсы ЦП становятся узким местом, можно и нужно выделить виртуальной машине дополнительные виртуальные ЦП.
Пункты, которые я обсуждал, ни в коем случае не являются единственными методами снижения потребления аппаратных ресурсов виртуальной машиной. Часто будут другие вещи, которые вы можете сделать, которые специфичны для приложения или службы, на которой работает конкретная виртуальная машина.