Как в Hyper V создать виртуальную машину


07 сентября 2019


Создание виртуальной машины в Hyper V

В Hyper V создание виртуальной машины можно выполнить множеством способов. Это можно сделать множеством способов, но мы разберем с Powershell и диспетчер Hyper V.

Создание виртуальных машин одинаковое в случаях всех версий Windows. Если вы планируете установить Linux, то после создания ВМ может потребоваться отключить опцию Secure Boot.

В случае с интерфейсом первое что нужно сделать это зайти по следующему пути:

hyper v создание машины

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

Сама ВМ состоит из нескольких файлов - это файлы конфигураций и виртуальный диск. После создания эти файлы можно переместить. Я обычно располагаю их в одном месте.

hyper v создание виртуальной машины

На следующей вкладке мы видим возможность выбора поколения ВМ. Все операционные системы могут работать в первом поколении виртуальных машин (Generation 1), большинство 64-разрядных систем могут работать в поколении 2 (Generation 2). Легче всего представлять, что первое поколение это машины с BIOS и MBR, а второе с UEFI и GPT. В основном отличия такие:

  • Generation 1 - если редакции ниже и включая Windows Server 2008 R2, Windows 7, CentOS 5, Debian 7, FreeBSD 10.1, Oracle Linux 6, Ubuntu 12 либо это 32 разрядные системы. В этом поколении используются контроллеры IDE, виртуальный диск VHD до 2 ТБ и VHDX.
  • Generation 2 - в редакциях выше предыдущих, например Windows Server 2012, и 64 - разрядные. Все характеристики имею больше возможностей, чем машины предыдущих.

В большинстве случаем выбирается поколение 2. В дальнейшем этот параметр нельзя изменить:

создать машины hyper v

В следующем окне мы можем выбрать фактическую память, которая будет присвоена ВМ и возможность использования памяти из пула динамической памяти. В отличие от VMWare ESXI гипервизор Hyper V не может использовать больше памяти, чем фактически установлено в системе. От этого следует, что в промышленной среде этот выбор нужно делать более обдумано. Если бы я устанавливал AD на ВМ, в маленькой организации, то я бы указал 5 Гб памяти для запуска машины ( Windows Server поставляется только в редакциях х64) и указал мы возможность использования динамической памяти. В таком случае, если понадобиться, виртуальная машина могла бы брать память из динамического пула. При этом в последующем можно установить диапазон динамической памяти, ее приоритет и многое другое. Эти параметры потом можно будет изменить и какие-то в случае работающей ВМ.

hyper v установка виртуальной машины

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

hyper v установка виртуальной машины

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

  • Динамические (Dynamically) - их размер растет с 0 КБ до размера указанного в настройках. Тем самым у вас не занимается все место на хосте Hyper V. В ESXI такие диски называются Thin Provision.
  • Фиксированные (Fixed) - на хосте Hyper V сразу создается файл с указанным разделом. В ESXI такие диски называются Thick Provision Lazy Zeroed.
  • Дифференциальные или Разностные (Differencing) - работа похожа на дифференциальный бэкап, но в этом случае подразумевается вложенность дифференциального диска в динамический или фиксированный.
    По принципу дифференциальных дисков так же часто приводят пример с работой чекпоинтов (снэпшотов), они работают похожим образом.

Дифференциальный не используется в рабочей среде, рекомендуется использовать только в тестовых средах. Я, в тестовых стендах, использую только динамический тип.

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

Во втором окне мы можем подключить либо новый пустой диск, либо уже с установленной ОС.

В третьем варианте мы не создаем диск и ничего не подключаем. Подключить и создать диск можно и после создания виртуальной машины.

hyper v установка виртуальной машины

В предпоследнем окне мы можем подключить образ ОС, установить операционную систем через сеть либо сделать это позже.

hyper v как создать виртуальный сервер

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

hyper v создание машины

Дальше запускаем виртуальную машину Hyper V. Гипервизор запуститься с установочного диска. Возможно потребуется начать любую кнопку. Сама установка ОС на виртуальную машину Hyper V ничем не отличается от обычной:

Запуск и подключение к виртуальной машине Hyper V

Так как я устанавливал не Windows, а сервер CentOS т.е. Linux у меня появится ошибка:

No operating system was loaded. Your virtual machine may be configured incorrectly

Система не может загрузится.

No operating system was loaded. Your virtual machine may be configured incorrectly

Связано это с такой опцией как "Безопасная загрузка" или "Secure Boot". В случае с ОС Windows в Hyper V уже есть сертификаты, которые бы могли подписать загрузчик. В случае с Linux это нужно сделать через Powershell, на выключенной виртуалке:

Set-VMFirmware -VMName 'CentOS Virtual' -SecureBootTemplate MicrosoftUEFICertificateAuthority

На сколько помню, в случае с FreeBSD, это не поможет. В этом случае нужно отключить Безопасную загрузку вовсе. Для этого зайти в настройки виртуальной машины Hyper V:

Настройки виртуальной машины Hyper V

После этого зайти во вкладку безопасность и снять галочку с "Enable Secure Boot".

 Безопасная загрузка (Secure Boot) в Hyper V

После этого запуск виртуальной машины Hyper V будет успешной и мы сможем выполнить установку.

 

Создание виртуальной машины Hyper V в Powershell

Если запустить команду без параметров, то ВМ создастся Generation 1 и без жесткого диска:

New-VM

Через эту команду мы можем создать виртуальны винчестер, но он будет динамическим. Как и в случае с GUI диск возможно создать и отдельно, а затем подключить его. Командой ниже я создам виртуальную машину с Win 10 х64, стартовой памятью 4GB, она будет поколения 2, с диском VHDX в 40GB и без подключения к коммутатору:

New-VM -Name 'Windows 2012' -MemoryStartupBytes 4GB -Generation 2 -NewVHDSizeBytes 40GB -NewVHDPath 'C:\win2012.vhdx' -BootDevice VHD

Где:

  • NewVHDSizeBytes - указывает на передельный размер VHDX файла. Это значение может быть и в терабайтах TB и мегабайтах MB.
  • NewVHDPath - путь до папки, где будет храниться файл.
  • MemoryStartupBytes - выделенная память. Аналогично созданию диска можно указывать TB и MB. По умолчанию динамическая память отключена.
  • Generation - поколение 1 или 2
  • BootDevice - устройство с которого будет загрузка. Возможные значения Floppy, CD, IDE, LegacyNetworkAdapter, NetworkAdapter, VHD.

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

New-VHD -Path 'C:\centos.vhdx' -SizeBytes 40GB -Fixed

Затем я подключу этот винчестер когда выполню в Hyper V создание машины CentOS. Я так же подключу машину к существующему сетевому коммутатору:

New-VM -Name 'CentOS' -MemoryStartupBytes 4GB -Generation 2 -VHDPath 'C:\centos.vhdx' -BootDevice VHD -SwitchName 'Ext Test'

Имена свитчей смотрятся через команду:

Get-VMNetworkAdapter

Если у вас нет коммутаторов почитайте про создание и настройку виртуальных коммутаторов Hyper V.

Способом ниже мы включим динамическую память на одной из созданных выше ВМ:

Set-VM -Name 'Windows 2012' -DynamicMemory

Скорее всего нужно установить ОС. Для этого нам нужно создать привод и указать путь до ISO файла:

# Создание DVD привода
Add-VMDvdDrive -VMName 'CentOS'
# Установка в привод образа
Set-VMDvdDrive -VMName 'CentOS' -Path 'C:\HV\CentOS-7-x86_64-Minimal-1810.iso'

В случае установки Linux может понадобиться отключить безопасную загрузку, как и в случае показанном при установке с GUI:

Set-VMFirmware -EnableSecureBoot Off -VMName 'CentOS'

Выполним запуск виртуальной машины Hyper V в Powershell:

Start-VM 'CentOS'

В моем случае я сразу загрузился с DVD привода.

...

Теги: #powershell #hyper-v


Популярные тэги
О блоге
Этот блог представляет собой конспекты выученного материала, преобретенного опыта и лучшие практики в системном администрировании и программировании.