Виртуализация изменила способы управления ресурсами и их развертывания. Будь то в облаке или локально, технологии виртуализации позволяют нам максимально использовать ресурсы, повышать масштабируемость, снижать затраты и укреплять безопасность.
Hyper-V — это широко используемый продукт виртуализации от Microsoft, который может беспрепятственно запускать несколько независимых виртуальных машин на любом компьютере. В этой статье мы представим подробное руководство по Hyper-V, рассказывающее о его функциях, о его сравнении с VMware, а также о том, как включить его и управлять им в Windows Server 2019.
Что такое виртуализация и как ее использовать?
Виртуализация — это процесс создания нескольких изолированных виртуальных ресурсов из одного физического ресурса. Проще говоря, виртуализация позволяет физическому компьютеру запускать множество виртуальных компьютеров, при этом каждый виртуальный компьютер получает свою собственную выделенную сеть, память, хранилище и операционную систему (OS).
Виртуализация делает это с помощью специального программного обеспечения, называемого гипервизором. Гипервизор действует как уровень абстракции между виртуальными компьютерами (или машинами) и физическими ресурсами. Он управляет распределением виртуальных ресурсов между виртуальными компьютерами и гарантирует, что они не будут мешать друг другу.
Контейнеры Docker и виртуальные машины (VMS) — два популярных типа виртуализации. Контейнеры Docker — это облегченные решения для виртуализации, которые упаковывают приложение и его зависимости в единый образ. Виртуальные машины — это более мощные решения для виртуализации, которые позволяют запускать целые операционные системы в изолированных средах.
Виртуализация имеет ряд преимуществ, в том числе:
- Консолидация Пул физических серверов можно объединить для создания единой большой виртуальной среды. Это позволяет сэкономить место, электроэнергию и затраты на обслуживание.
- Упрощенное управление Программное обеспечение для виртуализации обычно включает в себя панель централизованного управления, которую можно использовать для создания виртуальных машин и управления ими, мониторинга их производительности и применения политик безопасности.
- Поддержка нескольких ОС Без виртуализации невозможно запустить две операционные системы на одном компьютере. Виртуализация позволяет нам запускать приложения с разными требованиями к ОС на одном компьютере, не беспокоясь о конфликтах.
- Изоляция и безопасность Каждая виртуальная машина изолирована от остальных. Даже если одна из них работает со сбоями или вылетает из строя, это не влияет на другие виртуальные машины.
- Гибкость: виртуализация способствует гибкости. Виртуальные машины легко создавать, настраивать и перемещать между физическими серверами.
Что такое Hyper-V?
Hyper-V — это гипервизор, разработанный Microsoft, который позволяет создавать, развертывать виртуальные машины и управлять ими на сервере Windows server. Он предлагает несколько функций безопасности, производительности и сетевого взаимодействия, которых не было в старых продуктах Microsoft для виртуализации, таких как Microsoft Virtual Server и Windows Virtual PC.
Как работает Hyper-V?
Hyper-V виртуализирует все аппаратные ресурсы физического компьютера и распределяет их по разным виртуальным машинам. Физический компьютер, на котором работает Hyper-V, называется хостом. Виртуальные машины, работающие на хосте, известны как гостевые виртуальные машины.
Каждая виртуальная машина Hyper-V работает так, как если бы это был отдельный физический компьютер, со своей собственной операционной системой, памятью, хранилищем, сетью и процессором. Такая изоляция позволяет запускать приложения с разными потребностями в ядре на одном компьютере. Например, вы можете запустить приложение C ++ внутри виртуальной машины CentOS 7 и приложение Java внутри виртуальной машины Windows Server на одном и том же физическом компьютере.
Последние версии Hyper-V также могут быть включены в определенных версиях Windows 10, включая Windows 10 Enterprise, Windows 10 Pro и Windows 10 Education. Для запуска Hyper-V ваша система должна соответствовать следующим минимальным требованиям:
- Минимум 4 гигабайта оперативной памяти
- 64-разрядный процессор, поддерживающий преобразование адресов второго уровня (SLAT)
- Процессоры с расширением VM Monitor Mode (VT-x для процессоров Intel или AMD-V для процессоров AMD)
Виртуализация сети
Hyper-V использует виртуальный коммутатор и виртуальный сетевой адаптер для работы в сети. Виртуальный коммутатор представляет собой коммутатор Ethernet уровня 2 со множеством готовых функций для сегментации трафика, мониторинга и безопасности. Сетевой адаптер подключается к порту виртуального коммутатора, что позволяет виртуальной машине подключаться к сети.
Для настройки сети администраторы могут создать виртуальный коммутатор во время установки Hyper-V. Затем этот коммутатор можно подключить к виртуальным машинам по мере их подготовки. Когда коммутатор связан с виртуальной машиной, Hyper-V автоматически добавляет сетевой адаптер к этой виртуальной машине.
Стоит отметить, что один виртуальный коммутатор может быть связан с несколькими виртуальными машинами. Коммутатор позволяет виртуальным машинам совместно использовать одни и те же сетевые ресурсы и при необходимости взаимодействовать друг с другом и с внешней сетью.
Hyper-V предлагает различные виды виртуальных коммутаторов:
- Внутренние Коммутаторы похожи на частные сети для виртуальных машин. Они позволяют виртуальным машинам взаимодействовать друг с другом и с хост-системой, но не с внешними сетями.
- Частные Частные коммутаторы полностью изолированы. Виртуальные машины, подключенные к частному коммутатору, могут взаимодействовать только друг с другом, но не с хостом.
- Внешние Внешние коммутаторы соединяют виртуальные машины с физическим сетевым адаптером на главном сервере, обеспечивая связь с другими устройствами в физической сети. Они обеспечивают виртуальную машину прямым подключением к внешнему миру.
Hyper-V также поддерживает преобразование собственных сетевых адресов (NAT) для виртуальных машин. NAT позволяет нескольким виртуальным машинам использовать IP-адрес хоста при подключении к внешним сетям. Для реализации NAT необходимо создать виртуальную сеть NAT и подключить ее к внутреннему коммутатору вашей виртуальной машины.
Hyper-V против VMware
VMware — компания, предлагающая широкий спектр продуктов для виртуализации, включая vSphere, VMware Workstation и VMware ESXi. Hyper-V и VMware — две ведущие платформы виртуализации. Обе платформы предлагают широкий спектр преимуществ, но между ними также есть некоторые ключевые различия.
- Hyper-V предлагает ограниченную поддержку виртуальных машин, отличных от Windows, в то время как VMware обеспечивает надежную кроссплатформенную совместимость.
- VMware — коммерческий продукт, тогда как Hyper-V бесплатен для пользователей Windows Server и Windows 10.
- У Hyper-V меньше накладных расходов по сравнению с VMware, поскольку он встроен в ядро Windows. VMware обычно использует больше ресурсов, поскольку работает поверх операционной системы.
- У VMware более крутая кривая обучения по сравнению с Hyper-V.
- VMware располагает более обширной экосистемой сторонних приложений и интеграций, которые можно использовать для расширения набора ее функций. Hyper-V легко интегрируется с продуктами Microsoft Suite, но не с таким количеством сторонних приложений.
- Оба продукта предлагают расширенные функции виртуализации, включая вложенную виртуализацию, оперативную миграцию, клонирование и удаленное подключение.
Выбор между физическими серверами («bare metal») и виртуальными машинами Hyper-V/VMware
При выборе между физическими серверами («bare metal») и виртуальными машинами Hyper-V/VMware важно взвесить все «за» и «против» каждого варианта. В этом разделе мы рассмотрим ключевые соображения, которые помогут вам принять правильное решение.
Развертывание и изоляция
Bare metal
Когда вы используете bare metal, ваши рабочие нагрузки выполняются непосредственно на физических серверах. Обычно на каждом сервере работает одна операционная система, и вы имеете максимальный контроль над оборудованием. Такой подход обеспечивает высочайший уровень изоляции, поскольку каждый сервер может работать независимо.
Виртуальные машины
С виртуальными машинами вы запускаете несколько экземпляров операционных систем на одном физическом сервере. Все виртуальные машины совместно используют аппаратные ресурсы сервера, включая центральный процессор, память, сеть и хранилище. Хотя виртуальные машины и обеспечивают изоляцию между рабочими нагрузками, она не такая строгая, как в случае с bare metals.
Использование ресурсов
Bare metal
При использовании bare metal каждый сервер предназначен для определенной задачи или приложения. Хотя это обеспечивает максимальную производительность для данной конкретной рабочей нагрузки, это может привести к недоиспользованию оборудования, поскольку один сервер часто использует не все доступные ресурсы.
Виртуальные машины
Виртуальные машины гораздо более ресурсоэффективны, поскольку позволяют запускать несколько рабочих нагрузок на одном физическом сервере. Такое эффективное использование ресурсов является одним из ключевых преимуществ виртуализации. Более того, пользователи могут динамически распределять ресурсы для виртуальных машин в зависимости от спроса, что также делает их гибким решением.
Масштабируемость
Bare metal
Масштабирование с использованием «чистого металла» обычно предполагает добавление большего количества физических серверов. Этот процесс гораздо менее гибкий и медленный по сравнению с масштабированием виртуальных машин, поскольку часто требует покупки, установки и настройки нового оборудования.
Виртуальные машины
Виртуальные машины обладают большей масштабируемостью. Вы можете легко создавать, клонировать или переносить виртуальные машины в соответствии с меняющимися требованиями, часто без необходимости в дополнительном физическом оборудовании. Такая масштабируемость является основной причиной, по которой виртуализация является популярным выбором для облачных вычислений и центров обработки данных.
Управление и обслуживание
Bare metal
Управление, мониторинг и обслуживание физических серверов могут быть более трудоемкими. Обновления, резервное копирование, устранение неполадок и аудит могут потребовать дополнительных усилий, особенно при крупномасштабных развертываниях.
Виртуальные машины
Виртуальными машинами по своей сути проще управлять. Платформы виртуализации, такие как HyperV и VMware, предоставляют инструменты для централизованного управления, моментального резервного копирования, плавной миграции и устранения неполадок. Обновления и обслуживание могут быть более упрощенными, поскольку изменения могут вноситься централизованно (на уровне виртуализации).
Соображения по стоимости
Bare metal
Развертывание простых серверов может потребовать более высоких первоначальных затрат, поскольку вам понадобятся выделенные серверы для различных рабочих нагрузок. Однако в некоторых случаях это может быть более экономичным для конкретных высокопроизводительных приложений, которым требуются выделенные ресурсы, например хранилище данных.
Виртуальные машины
С точки зрения потребностей в оборудовании и использования виртуальные машины могут быть гораздо более экономичными по сравнению с «голым металлом». Они позволяют максимально использовать существующее оборудование и обеспечивают гибкость при масштабировании ресурсов по мере необходимости.
Возможности Hyper-V.
Hyper-V предлагает множество функций, связанных с развертыванием, подключением к сети, управлением, безопасностью, эксплуатацией и миграцией виртуальных машин.
- Вложенная виртуализация Hyper-V поддерживает вложенную виртуализацию, которая позволяет запускать виртуальные машины внутри виртуальных машин (т. Е. Запускать Hyper-V внутри виртуальной машины Hyper-V). Это полезная функция для сценариев тестирования и разработки.
- Простые в использовании инструменты управления Корпорация Майкрософт предлагает различные инструменты для управления виртуальными машинами Hyper-V, включая Hyper-V manager и System Center Virtual Machine Manager (SCVMM).
- Отказоустойчивый кластер Hyper-V поддерживает отказоустойчивый кластер, обеспечивая высокую доступность виртуальных машин.
- Реплики и резервные копии Hyper-V поставляется со встроенными функциями репликации и резервного копирования. Реплика Hyper-V позволяет создавать и хранить копии ваших виртуальных машин на отдельном хосте. Диспетчер защиты данных System Center (DPM) можно настроить для выполнения резервного копирования на уровне хоста или гостя.
- Переносимость Hyper-V предоставляет несколько функций, таких как импорт/экспорт, оперативная миграция и перенос хранилища, которые делают виртуальные машины Hyper-V очень переносимыми.
- Безопасность Hyper-V безопасен по своей конструкции. Он предлагает множество средств контроля безопасности, включая зашифрованные сети, проверку ключей хоста, проверку доверенных платформенных модулей (TPM), хранение конфиденциальных данных, экранированные виртуальные машины и защиту ресурсов хоста.
- Удаленные подключения Hyper-V поставляется с Virtual Machine Connection, утилитой, предоставляющей консольный доступ к виртуальным машинам. Это отлично подходит для устранения неполадок, настройки виртуальных машин или выполнения задач обслуживания.
Как включить и использовать Hyper-V в Windows Server 2019
Hyper-V поставляется в составе большинства версий Windows. Вам нужно только установить и включить роль Hyper-V, чтобы начать создавать и запускать виртуальные машины. Мы покажем вам два способа включить роль в Windows Server 2019: через диспетчер серверов и PowerShell.
Прежде чем начать, проверьте, соответствует ли ваша система требованиям к виртуализации. Вы можете сделать это, выполнив эту команду в PowerShell:
Systeminfo.exe
Перейдите к разделу «Требования к Hyper-V» в конце выходных данных. В поддерживаемой системе вы должны увидеть следующие строки:
Hyper-V Requirements: VM Monitor Mode Extensions: Yes Virtualization Enabled In Firmware: Yes Second Level Address Translation: Yes Data Execution Prevention Available: Yes
Включение Hyper-V с помощью PowerShell
Мы будем использовать командлет Install-WindowsFeature для установки и включения Hyper-V. Выполните следующие действия:
- Запустите PowerShell от имени администратора.
- Скопируйте, вставьте и запустите следующую команду:
Install-WindowsFeature -Name Hyper-V -IncludeManagementTools -Restart
- В качестве альтернативы, если вы хотите установить Hyper-V на удаленный сервер, используйте эту команду:
Install-WindowsFeature -Name Hyper-V -ComputerName -IncludeManagementTools -Restart
(Примечание: заменить с фактическим именем удаленного сервера.)
Теперь сервер должен перезапуститься с включенным Hyper-V.
Включение Hyper-V с помощью диспетчера серверов
- Откройте диспетчер серверов. Нажмите Добавить роли и компоненты.
- Нажмите Далее после прочтения страницы “Перед началом”.
- Теперь вы должны увидеть страницу “Выбор установки”. Выберите “Установка на основе ролей или функций” и нажмите Далее.
- На странице “Выбор сервера назначения” выберите нужный сервер и нажмите Далее.
- На странице “Выбор ролей сервера” прокрутите вниз и выберите “Hyper-V” из списка доступных ролей.
- Вы должны увидеть всплывающее окно с просьбой установить компоненты, необходимые для Hyper-V. Обязательно установите флажок “Включить средства управления (если применимо)”. Нажмите Добавить функции.
- На странице “Функции” нажмите Далее.
- Нажмите Далее на вводной странице “Hyper-V».
- В зависимости от ваших требований выберите соответствующие настройки на страницах “Виртуальные коммутаторы”, ”Миграция“ и «Хранилища по умолчанию”. Например, на странице “Виртуальные коммутаторы” вы можете выбрать сетевой адаптер. На странице “Миграция” вы можете выбрать, должен ли сервер получать текущие миграции. На странице “Хранилища по умолчанию” вы можете установить расположение по умолчанию для виртуального жесткого диска и файлов конфигурации виртуальной машины.
- На странице “Подтвердите выбор установки” установите флажок “Автоматически перезапускать конечный сервер, если требуется”, а затем нажмите «Установить».
После завершения установки вы сможете увидеть новый сервер на странице “Все серверы” в диспетчере серверов.
Создание вашей первой виртуальной машины на Hyper-V
Теперь, когда мы установили и включили роль Hyper-V на нашем сервере, мы можем использовать Hyper-V manager для создания виртуальной машины. Выполните следующие действия.:
- Откройте диспетчер Hyper-V на сервере.
- Выберите “Действие” -> “Создать” -> “Виртуальная машина”.
- Должен открыться “Мастер создания виртуальной машины”. Нажмите Далее.
- На странице “Укажите имя и расположение” укажите имя и расположение виртуальной машины. Затем нажмите Далее.
- На странице “Укажите поколение” выберите, хотите ли вы создать виртуальную машину поколения 1 или поколения 2. Затем нажмите Далее.
- На странице “Назначить память” выберите значение от 32 МБ до 5902 МБ для начальной памяти. В зависимости от вашего варианта использования вы можете установить или отменить флажок “Использовать динамическую память для этой виртуальной машины”. Нажмите Далее, когда закончите.
- На странице “Настройка сети” выберите виртуальный коммутатор из списка доступных подключений и нажмите Далее.
- На странице “Подключить виртуальный жесткий диск” выберите между созданием нового виртуального диска, использованием существующего или подключением виртуального диска позже. После выбора нажмите Далее.
- На странице “Параметры установки” выберите способ установки виртуальной машины и нажмите кнопку Далее.
- Нажмите Готово.
- В диспетчере Hyper-V щелкните правой кнопкой мыши только что созданную виртуальную машину и выберите Подключиться.
- Должно появиться новое окно “Подключение к виртуальной машине”. Выберите “Действие” -> “Пуск”
- Следуйте инструкциям на экране, чтобы установить операционную систему и загрузиться в виртуальную машину.
Управление виртуальными машинами и мониторинг
Теперь, когда мы создали нашу первую виртуальную машину на виртуализированном ресурсе с поддержкой Hyper-V, давайте рассмотрим, как выполнять некоторые распространенные административные операции с помощью Hyper-V manager и PowerShell.
Остановка виртуальных машин
Мы можем использовать PowerShell для остановки виртуальной машины, которая работает со сбоями или не отвечает на запросы. Команда Stop-VM позволяет завершить работу или выключить виртуальную машину, используя ее имя. Например, выполнение следующей команды из гостевой системы завершит работу виртуальной машины с именем SampleVM:
Stop-VM -Name SampleVM
Вы также можете использовать опцию -Force для принудительного завершения работы после предоставления виртуальной машине 5 минут на сохранение ее данных.
Stop-VM -Name SampleVM -Force
Чтобы просто выключить компьютер, используйте опцию -turnOff . Это похоже на отключение физического компьютера от сети и может привести к потере несохраненных данных.
Stop-VM -Name SampleVM -TurnOff
Экспорт и импорт образов виртуальных машин
Можно импортировать/экспортировать виртуальные машины Hyper-V с помощью PowerShell или Hyper-V manager.
Для экспорта:
При использовании Hyper-V manager щелкните правой кнопкой мыши виртуальную машину и выберите Экспорт. Затем выберите каталог для хранения экспортированного файла и нажмите Экспорт.
Из PowerShell вы можете использовать командлет Export-VM для экспорта виртуальной машины. Например, следующая команда экспортирует виртуальную машину с именем SampleVM в каталог D:\export.
Export-VM -Name SampleVM -Path D:\export
Для импорта:
При использовании Hyper-V manager:
- Выберите “Действия” -> “Импортировать виртуальную машину”.
- Нажмите Далее на странице “Перед началом”.
- На странице “Найти папку” перейдите в каталог, содержащий экспортированный файл, и выберите Далее.
- На странице “Выбор виртуальной машины” выберите виртуальную машину для импорта. Затем нажмите Далее.
- На странице “Выбрать тип импорта” выберите тип импорта и нажмите Далее.
- На странице “Краткое описание” просмотрите свой выбор и нажмите Готово.
Из PowerShell вы можете использовать командлет Import-VM для импорта виртуальной машины. Например, следующая команда импортирует виртуальную машину по заданному пути и копирует ее файлы в каталоги по умолчанию. (Обязательно замените путь и имя файла экспорта)
Import-VM -Path 'D:\export\2B912EC3-F1F0-4FDF-B98E-29CAD592C95B.vmcx' -Copy -GenerateNewId
Создайте виртуальный коммутатор с помощью PowerShell
Выполните следующие действия, чтобы создать новый внешний виртуальный коммутатор для ваших виртуальных машин с помощью PowerShell:
- Запустите Get-NetAdapter, чтобы получить список доступных сетевых адаптеров.
- Инициализируйте новую переменную с помощью сетевого адаптера, который вы хотите использовать для нового коммутатора.
$adapter = Get-NetAdapter -Name 'Ethernet Adapter 2'
- Выполните следующую команду, чтобы создать переключатель:
New-VMSwitch -Name "External Virtual Switch 2" -AllowManagementOS $True -NetAdapterName $adapter.Name
Создание контрольных точек с помощью Hyper-V manager
Hyper-V упрощает создание контрольных точек. Контрольная точка фиксирует состояние виртуальной машины, позволяя при необходимости выполнить откат к предыдущему состоянию. Вот как создать контрольную точку с помощью Hyper-V manager:
- В диспетчере Hyper-V щелкните правой кнопкой мыши виртуальную машину и выберите Контрольную точку.
- После завершения процесса вы сможете увидеть новую контрольную точку в разделе Контрольные точки.
Перенос виртуальной машины с помощью Hyper-V manager
Вы можете перенести работающую виртуальную машину с помощью Hyper-V Manager всего за пять простых шагов:
- Откройте диспетчер Hyper-V. (Для этого выберите Сервер Диспетчер -> Инструменты -> Диспетчер Hyper-V.)
- Выберите соответствующий сервер на панели навигации. Если вы не видите нужный сервер, выполните следующие действия.
- Щелкните правой кнопкой мыши Hyper-V Manager и выберите Подключиться к серверу.
- Введите имя сервера и нажмите OK.
- Повторите 1) и 2), если хотите добавить больше серверов.
- Перейдите на панель виртуальных машин. Щелкните правой кнопкой мыши соответствующую виртуальную машину и выберите Переместить. Теперь вы должны увидеть мастер перемещения.
- Следуйте инструкциям на разных страницах мастера, указав сведения о целевом сервере, тип перемещения и другие параметры.
- После выбора нужных параметров просмотрите их на странице сводки, а затем нажмите Готово.
Мониторинг производительности Hyper-V.
Hyper-V manager предлагает некоторые базовые показатели работоспособности и состояния виртуальной машины, включая время безотказной работы, загрузку процессора, выделенную память и статус. Microsoft также предлагает другие встроенные инструменты для отслеживания виртуальных машин Hyper-V в режиме реального времени.
Например, командлет Measure-VM можно использовать для извлечения данных, связанных с сетевым трафиком, использованием диска, процессора и другими данными. Командлет Measure-VMReplication показывает статистику, связанную с репликацией. Командлет Measure-VMResourcePool сообщает данные об использовании ресурсов для пулов виртуальных машин.
Удаленное управление с помощью PowerShell
PowerShell Direct — это удобный способ удаленного управления виртуальными машинами Hyper-V. Выполните следующие действия, чтобы получить удаленный доступ к виртуальной машине и управлять ею с помощью PowerShell:
- Откройте PowerShell от имени администратора.
- Командлет Enter-PSSession позволит вам подключиться к виртуальной машине. Например, следующая команда попытается установить соединение с виртуальной машиной с именем TestVM:
Enter-PSSession -VMName TestVM
- При появлении запроса введите свои учетные данные для входа в виртуальную машину.
Вот и все! Теперь вы можете запускать команды непосредственно на подключенной виртуальной машине. Как только вы закончите, используйте Exit-PSSession для выхода из сеанса.
Заключение
Hyper-V — ведущее программное обеспечение для виртуализации, которое позволяет создавать отказоустойчивые и гибкие виртуальные инфраструктуры. Он прост в использовании и предлагает широкий спектр встроенных функций и инструментов для подготовки, развертывания, управления и масштабирования виртуальных машин.