Андрей Смирнов
Время чтения: ~12 мин.
Просмотров: 2

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

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

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

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

34.jpg

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

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

35.jpg

На следующей вкладке мы видим возможность выбора поколения ВМ. Все операционные системы могут работать в первом поколении виртуальных машин (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. В дальнейшем этот параметр нельзя изменить:

36.jpg

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

37.jpg

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

38.jpg

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

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

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

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

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

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

40.jpg

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

41_TlMJIks.jpg

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

42.jpg

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

43.jpg

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

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

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

44.jpg

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

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

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

45.jpg

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

46.jpg

После этого запуск виртуальной машины 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:HVCentOS-7-x86_64-Minimal-1810.iso'

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

Set-VMFirmware -EnableSecureBoot Off -VMName 'CentOS'

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

Start-VM 'CentOS'

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

Теги: #powershell #hyper-v

hyper-v-network-000.jpgПродолжая цикл статей посвященный виртуализации, сегодня мы поговорим о настройке сети в Hyper-V. Основное внимание мы уделим теории, а именно разберем как устроены виртуальные сети и как они взаимодействуют с реальными. Потому что, как показывает практика, многие администраторы, в отсутствие простых и понятных материалов по данному вопросу, вынуждены осваивать настройку сети в Hyper-V методом «научного тыка».

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

За настройку сетей в Hyper-V отвечает Диспетчер виртуальных коммутаторов, если мы откроем его, то увидим следующую картину:

hyper-v-network-001-thumb-450x424-4187.jpgКак видим, нам доступно создание трех типов сетей: внешней, внутренней и частной. Разберемся подробнее, для чего нужны эти сети и в чем разница между ними.

Внешняя сеть

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

hyper-v-network-002.jpgКак мы уже писали, основу виртуальной сети составляет виртуальный коммутатор. При создании внешней сети, Hyper-V создает виртуальный коммутатор, к которому через виртуальные сетевые адаптеры (vNIC) подключаются как виртуальные машины, так и хост. Физический адаптер отключается от хоста и по сути становится физическим портом виртуального коммутатора, через который он подключается к внешней сети.

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

А в свойствах физического адаптера остался только Расширяемый виртуальный сетевой коммутатор в Hyper-V.

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

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

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

Внутренняя сеть

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

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

Внутренняя сеть c NAT

Данная возможность появилась начиная с Windows Server 2016, Hyper-V Server 2016 и Windows 10. Подробнее читайте в нашей статье: Настраиваем сеть NAT в Hyper-V

Частная сеть

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

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

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

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

Hyper-V

В этой статье, мы рассмотрим пример организации подключения к Интернету на виртуальной машине Hyper-V. Хостовая ОС (это ОС сервера Hyper-V) может быть подключена к интернету через физический адаптер или беспроводное подключение Wi-Fi.

Содержание:Проводное подключение к Интернету</li>Настройка доступа в Интеренет через WiFi подключение</li></ul>

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

  1. External (внешний): – этот коммутатор используется для подключения виртуальных машин к внешней сети и Интернету. Хост и виртуальная машина при этом находятся в одной сети. Если хост имеет несколько сетевых адаптеров, то для виртуальных машин можно настроить несколько сетей.
  2. Internal (внутренний): – этот тип коммутатора используется для создания внутреннего сетевого соединения только между виртуальными машинами и гипервизором Hyper-V.
  3. Private (частный): — данный тип коммутатора используется для создания сетевого соединения только между виртуальными машинами.

Проводное подключение к Интернету

Создадим виртуальный коммутатор. Мы будем использовать его для подключения к физическому сетевому адаптеру Ethernet сервера Hyper-V. Откройте консоль управления Hyper-V. В меню действий выберите пункт Virtual Switch Manager.

virtual-switch-manager.png

В качестве типа коммутатора выберите External и нажмите кнопку Create Virtual Switch.

sozdat-novyj-virtualnyj-kommutator-hyper-v.png

В свойствах виртуального коммутатора укажите его имя, в свойствах подключения укажите физический Ethernet адаптер, через который должен работать данный коммутатор (в моем случае это контроллер Realtek PCIe GBE).

podklyuchenie-kommutatora-k-fizicheskoj-setevoj-karte.png

Затем откройте настройки ВМ, которой вы хотите предоставить доступ в Интернет. В разделе Network Adapter выберите, что данная ВМ подключена к созданному нами ранее виртуальному коммутатору.

podklyuchenie-vm-k-virtulanomu-kommutatoru.png

В моем случае я подключен к интернету через широкополосное соединение. Найдите это подключение в панели управления хоста Hyper-V и откройте его свойства. Перейдите на вкладку Sharing в секции Internet Connection Sharing выберите опцию Allow Other Network Users to Connect Through This Computer’s Internet Connection. В выпадающем списке выберите ваш виртуальный коммутатор, созданный ранее. Сохраните изменения.

nastrojka-obshego-dostupa-k-shirokopolosnomu-podklyuch.png

Теперь в вашей виртуальной машине должен появится доступ в интернет.

Настройка доступа в Интеренет через WiFi подключение

В том случае, если вы подключаетесь к Интернету через беспроводное WiFi подключение, доступ гостевой ОС виртуальной машины к Интернету настраивается по аналогии.

С помощью консоли Hyper-V Manager создайте новый внешний виртуальный коммутатор. В качестве внешней сети для виртуального коммутатора выберите свой WiFi адаптер (у меня это Intel Centrino Wireless-N 1030).

vswitch-dlya-wifi.png

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

dostup-vm-v-internet-cherez-wifi-podklyuchenie.png

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

Одним из вариантов организации внешнего подключения является NAT (см статью Как настроить NAT в Hyper-V 2016).

Используемые источники:

  • https://fixmypc.ru/post/sozdanie-virtualnoi-mashiny-v-hyper-v/
  • https://interface31.ru/tech_it/2014/01/nastraivaem-set—v-hyper-v.html
  • https://vmblog.ru/nastrojka-podklyucheniya-k-internetu-v-virtualnoj-mashine-hyper-v/

Рейтинг автора
5
Подборку подготовил
Андрей Ульянов
Наш эксперт
Написано статей
168
Ссылка на основную публикацию
Похожие публикации