Рекомендации по настройке виртуальных машин Microsoft Hyper-V

Опубликовано: 16 Апреля, 2023
Рекомендации по настройке виртуальных машин Microsoft Hyper-V

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

Динамическая память

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

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

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

Контрольно-пропускные пункты

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

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

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

Шаблоны

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

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

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

Производительность хранилища

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

Любой тип нехватки ресурсов может привести к снижению производительности виртуальных машин. Однако единственным ресурсом, который наиболее вероятно (по крайней мере, исходя из моего собственного опыта) является источником проблем с производительностью ВМ, является хранилище. Проще говоря, подсистема хранения должна обеспечивать достаточное количество операций ввода-вывода в секунду для удовлетворения потребностей различных виртуальных машин.

Очевидно, вам придется основывать архитектуру хранилища на требованиях вашей виртуальной машины к IOPS. Однако рекомендуется использовать массив RAID 10. Эта структура массива обеспечивает производительность чередования дисков, но с избыточностью зеркального отображения. Кроме того, если для вас важна производительность хранилища, рассмотрите возможность использования толстой подготовки для виртуальных жестких дисков.

Рекомендации по работе с виртуальными машинами Hyper-V для достижения наилучших результатов

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