Время на прочтение
5 мин
Количество просмотров 83K
В этой статье я хочу поделиться своим опытом установки и настройки гипервизора Hyper-V Server 2012R2 от компании Microsoft. Итак, приступим. Дано: 2 сервера и iscsi СХД.
1. Подготовка образа
Скачиваем образ для установки сервера с сайта Microsoft. Если вы располагаете развернутой службой Windows Deployment Services или установленным «Комплект средств для развертывания и оценки Windows» (Windows ADK), можно полученный по ссылке выше дистрибутив архиватором 7-zip распаковать в папку, например, D:\W2012\x64\dvd. Затем полученные
обновления windows
Windows8.1-KB2919355-x64.msu
Windows8.1-KB2919442-x64.msu
Windows8.1-KB2932046-x64.msu
Windows8.1-KB2934018-x64.msu
Windows8.1-KB2937592-x64.msu
Windows8.1-KB2938439-x64.msu
Windows8.1-KB2959977-x64.msu
скопировать в папку D:\W2012\x64\upd, создать папку D:\W2012\mnt и с помощью следующего батника обновить образ.
Скрипт обновления и модификации образа
Dism /Mount-WIM /WimFile:D:\W2012\x64\DVD\sources\install.wim /index:1 /MountDir:D:\W2012\mnt
dism /image:D:\W2012\mnt /Enable-Feature /FeatureName:MultipathIo
dism /image:D:\W2012\mnt /Enable-Feature /All /FeatureName:NetFx3 /Source:d:\W2012\x64\dvd\sources\sxs
dism /image:D:\W2012\mnt /Add-Package /PackagePath:d:\W2012\x64\upd
Dism /Unmount-Wim /MountDir:D:\W2012\mnt /commit
pause
Обратную сборку распакованного дистрибутива в загрузочный iso можно выполнить например программой Ultraiso, открыв в ней исходный образ и добавив в папку Sources файл install.wim из папки D:\W2012\x64\dvd\sources и сохранить полученный образ. Опять же все описанные выше манипуляции можно и не проводить, обновленный образ ускорит развертывание сервера Hyper-V
2. Установка
Если исходный диск для установки сервера превышает в размере 2Тб, то для того чтобы иметь возможность использовать все возможное пространство диска необходимо перед началом установки сконвертировать диск в GPT и разметить его. В процессе установки это сделать невозможно.
Необходимо загрузиться в режиме PE с инсталляционного диска и запустить diskpart.
Convert MBR to GPT using DISKPART
# Diskpart
# select disk 0
# convert gpt
# create partition primary align=64 offset= 104857600
Для дальнейшей установки необходимо в BIOS сервера выставить загрузку в UEFI режиме (но это в случае если у вас локальное дисковое хранилище сервера превышает 2 ТБ, если нет то этот шаг можно пропустить)
3. Начальная настройка
В sconfig включаем Remote Desktop (пункт 7-e-2):
Включаем ping (пункт 4-3):
В командной строке запускаем powershell и отключаем firewall (можно пропустить):
Set-NetFirewallProfile –Profile * -Enabled False
4. Настройка виртуального коммутатора
Задание пула MAC адресов для виртуального коммутатора (менять выделенные значения, т.е. берем последний октет ip-адреса (например 192.168.251.11) mgmt-интерфейса и переводим его в шестнадцатеричный вид):
New-ItemProperty -Path “HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization” -Name MinimumMacAddress -PropertyType Binary -Value ([byte[]](0x00,0x15,0x5D,0xFB,0x0B,0x00)) –Force
New-ItemProperty -Path “HKLM:\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Virtualization” -Name MaximumMacAddress -PropertyType Binary -Value ([byte[]](0x00,0x15,0x5D,0xFB,0x0B,0xFF)) –Force
Это нужно для того, чтобы MAC адреса виртуальных серверов, расположенных на разных hyper-v host, не пересекались. По умолчанию они выдаются из одного диапазона и могут получиться одинаковыми, как у меня и произошло при внедрении на одном объекте.
Получение списка сетевых адаптеров:
Get-NetAdapter
PS C:\Users\Administrator> Get-NetAdapter
Name InterfaceDescription ifIndex Status MacAddress LinkSpeed
---- ----------------- ------- ------ ---------- ---------
NIC4 Broadcom NetXtreme Gigabit Ethernet #2 14 Up C8-1F-66-D1-CB-FA 1 Gbps
NIC3 Broadcom NetXtreme Gigabit Ethernet #4 16 Up C8-1F-66-D1-CB-F9 1 Gbps
NIC2 Broadcom NetXtreme Gigabit Ethernet #3 15 Up C8-1F-66-D1-CB-F8 1 Gbps
NIC1 Broadcom NetXtreme Gigabit Ethernet 13 Up C8-1F-66-D1-CB-F7 1 Gbps
Нужные нам – NIC1 и NIC2.
Объединение адаптеров в группу (Team1):
New-NetLbfoTeam –Name Team1 –TeamMembers “NIC1”,“NIC2” –TeamingMode Lacp –LoadBalancingAlgorithm Dynamic
Создание виртуального коммутатора (vSwitch0):
New-VMSwitch -Name vSwitch0 -NetAdapterName Team1 -AllowManagementOS $False -MinimumBandwidthMode Weight
Создание виртуального сет. адаптера (Management) и подключение его к виртуальному коммутатору:
Add-VMNetworkAdapter -ManagementOS -Name "MGMT" -SwitchName "vSwitch0"
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "MGMT" -Access -VlanId 251
Set-VMNetworkAdapter -ManagementOS -Name "MGMT" -MinimumBandwidthWeight 20
Порты на физическом коммутаторе настроены в trunk и Vlan 251. В данном примере это подсеть для управления Hyper-V сервером.
Настройка IP-адреса, маски, шлюза и DNS сервера на виртуальном адаптере (MGMT): пункт 8 меню sconfig (например: 192.168.251.11/24, gw 192.168.251.1):
После этого сервер должен пинговаться и можно использовать удаленный доступ.
Подключаемся по RDP, создаем виртуальный сетевой адаптер (Cluster) и подключаем его к виртуальному коммутатору:
Add-VMNetworkAdapter -ManagementOS -Name "Cluster" -SwitchName "vSwitch0"
Set-VMNetworkAdapterVlan -ManagementOS -VMNetworkAdapterName "Cluster" -Access -VlanId 253
Set-VMNetworkAdapter -ManagementOS -Name "Cluster" -MinimumBandwidthWeight 40
5. Подключение СХД
Будем исходить из того, что СХД уже настроена и подключена в соответствующие порты коммутатора. Настроим ip-адреса для адаптеров iscsi интерфейса:
В командной строке запускаем powershell:
New-NetIPAddress -InterfaceAlias "NIC3" -IPAddress 192.168.254.22 -PrefixLength 24
New-NetIPAddress -InterfaceAlias "NIC4" -IPAddress 192.168.255.22 -PrefixLength 24
Set-Service –Name MSiSCSI –StartupType Automatic
Start-Service MSiSCSI
New-IscsiTargetPortal –TargetPortalAddress 192.168.254.12
$target = Get-IscsiTarget
$target = Get-IscsiTarget
$target| Connect-IscsiTarget -IsPersistent $true -IsMultipathEnabled $true -InitiatorPortalAddress 192.168.254.22 -TargetPortalAddress 192.168.254.12
$target| Connect-IscsiTarget -IsPersistent $true -IsMultipathEnabled $true -InitiatorPortalAddress 192.168.255.22 -TargetPortalAddress 192.168.255.12
Get-IscsiSession | Register-IscsiSession
С сетевыми адаптерами Broadcom NetXtreme вылез неприятный баг, который выражался в том, что на драйверах, идущих в образе, была очень низкая скорость передачи по сети от 3 до 5 МБайт/с на гигабитном подключении. Низкая производительность сети —
Broadcom is aware of this issue and will release a driver update to resolve the issue. Until the driver update is available, you can work around the issue by taking one of the following actions:
Disable VMQ on the Virtual Network Adapter by using the following Windows PowerShell cmdlet:
Set-VMNetworkAdapter –ManagementOS -Name MGMT -VmqWeight 0
Исправляем, либо обновляем драйвера вручную.
6. Установка необходимых ролей
Установка необходимых ролей, должно быть подключение сервера к интернету:
Dism /online /enable-feature:MultipathIo
DISM /online /Enable-Feature /all /FeatureName:NetFx3
Это если вы не модифицировали образ, как описано в п.1.
Добавляем поддержку SAS и iSCSI в оснастке mpiocpl и после перезагрузки в диспетчере дисков LUN-ы не будут двоиться, если сервер подключен двумя и более путями.
mpclaim -n -i -d "HP MSA 1040 SAN"
(шесть пробелов обязательно)
Проверка:
diskpart
# list disk
При добавлении нового volume на СХД выполняем в powershell:
Get-Disk
Initialize-Disk -Number <Number of disk> -PartitionStyle GPT -PassThru | New-Partition -AssignDriveLetter -UseMaximumSize | Format-Volume
Настройка времени (после добавления сервера в домен Windows время будет синхронизироваться с PDC):
В командной строке:
sc config w32time start= auto
net start w32time
Если необходимо, то вручную:
Control timedate.cpl
p.s.
Подправил немного текст и форматирование
Настройка кластера будет описана позднее.
В связи с постоянно растущим интересом ИТ-специалистов к сфере серверной виртуализации в целом, так и решениям на базе ПО от Microsoft в частности, сегодня я начинаю цикл статей, посвященных замечательному продукту Microsoft Hyper-V Server 2012 R2. Хочу отметить, что все нижеизложенное основывается на реальном опыте использовании группы серверов Hyper-V Server 2012 R2 в production-среде. В данной статье я максимально подробно расскажу о первоначальной настройке среды Hyper-V Server 2012 R2. Кстати, Hyper-V Server 2012 R2 можно скачать с официального сайта Technet Microsoft.
Содержание:
1. АВТОМАТИЧЕСКИЙ ЗАПУСК POWERSHELL ПРИ ВХОДЕ В СЕАНС
2. НАСТРОЙКА СЕТЕВЫХ АДАПТЕРОВ
3. ОТКЛЮЧАЕМ IPV6 НА СЕТЕВОМ ИНТЕРФЕЙСЕ
4. НАСТРОЙКА МЕЖСЕТЕВОГО ЭКРАНА (ADVANCED FIREWALL)
5. ВЗАИМОДЕЙСТВИЕ С SERVER MANAGER
6. СОЗДАНИЕ ДИСКОВОГО ХРАНИЛИЩА ДЛЯ ВИРТУАЛЬНЫХ МАШИН
7. НАСТРАИВАЕМ ПАРАМЕТРЫ ГИПЕРВИЗОРА
8. СОЗДАЕМ ВИРТУАЛЬНЫЙ КОММУТАТОР
Для удаленного управления Hyper-V Server 2012 R2 можно использовать ОС Windows Server 2012 R2 Standard или Datacenter, а также Windows 8.1.
В случае использования Windows Server 2012 R2 Standard или Datacenter необходимо установить консоль Hyper-V Manager. Это можно сделать в Server Manager или при помощи командлета PowerShell Install-WindowsFeature -Name ‘RSAT-Hyper-V-Tools’
В 64 битных версиях ОС Windows 8.1 Pro и Enterprise для установки Hyper-V Manager можно использовать средство настройки компонентов Windows.
Для остальных версий Windows 8.1 необходимо установить Remote Server Administration Tools (RSAT), которую также можно скачать на официальном сайте Microsoft.
Прежде, чем перейти непосредственно к настройке серверов, хочу подробнее остановиться на схеме сети, которая будет использоваться в нашей демонстрации.
В моем случае я буду использовать наипростейший вариант — локальная подсеть 192.168.1.0/24 с двумя машинами: Hyper-V Server 2012 R2 с IP-адресом 192.168.1.5 в качестве хоста виртуализации и Windows Server 2012 R2 Standard R2 с IP 192.168.1.6 в качестве хоста управления. Обе машины не являются участниками домена и входят в рабочую группу TESTLAB.
Итак, после завершения вполне себе интуитивной установки Hyper-V Server 2012 R2 перед нами предстает рабочий стол с двумя окнами, стандартная командная строка cmd.exe и окно скрипта sconfig.cmd:
Данный скрипт позволяет произвести первоначальную настройку сервера:
– сменить имя сервера
– сменить имя рабочей группы или ввести сервер в домен
– добавить локального администратора
– включить удаленный доступ к серверу, что позволить управлять им с помощью Server Manager, консолей MMC, PowerShell, подключаться по RDP, проверить доступность с помощью pingили tracert
– настроить Windows Update и устанавливать обновления
– настроить сетевые карты сервера
– настроить время на сервере
Также настройку времени на сервере можно выполнить с помощью команды controltimedate.cpl, а настройку региональных параметров — с помощью команды control intl.cpl. При этом будут запущены привычные консоли Панели Управления.
АВТОМАТИЧЕСКИЙ ЗАПУСК POWERSHELL ПРИ ВХОДЕ В СЕАНС
Когда вышла первая версия Hyper-V Server 2008, PowerShell в нем официально не поддерживался, и, единственным способом настройки и получения информации с сервера были утилиты командной строки, такие как net, netsh, wmic, и множество других. Они не обладали единообразным интерфейсом и способом использования, что в итоге увеличивало порог вхождения для администратора и влияло на производительность работы. Но время не стоит на месте и, начиная с Hyper-V Server 2008 R2, Microsoft внедряет поддержку PowerShell, а в Hyper-V Server 2012 PowerShell можно использовать сразу после установки системы. Более того, в Hyper-V Server 2012 включен модуль PowerShell для взаимодействия с Hyper-V, а в Hyper-V Server 2012 R2 количество командлетов для работы с Hyper-V превысило значение 170. Точное значение можно посмотреть с помощью Get-Command -ModuleHyper-V | Measure-Object.
Зайдем в оболочку PowerShell и запустим командлет New-ItemProperty, который создаст новый ключ в реестре HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\run.
New-ItemProperty -path HKLM:\SOFTWARE\Microsoft\Windows\CurrentVersion\run -Name PowerShell -Value «cmd /c start /max C:\Windows\system32\WindowsPowerShell\v1.0\powershell.exe -noExit» -Type string
Теперь при следующем входе в систему будет запускаться окно с оболочкой PowerShell, в которой мы продолжим настройку нашего сервера.
НАСТРОЙКА СЕТЕВЫХ АДАПТЕРОВ
Если сетевые адаптеры до этого не были настроены с помощью sconfig.cmd, сделаем это с помощью командлетов PowerShell.
Смотрим текущую конфигурацию IP на сетевых интерфейсах. В моем случае адресация назначена службой APIPA, так как в сети нет DHCP сервера.
Get-NetIPConfiguration
Назначаем статическую адресацию, маску сети, шлюз по умолчанию и адреса DNS серверов. InterfaceIndex сетевого адаптера берем из вывода предыдущего командлета.
New-NetIPAddress -InterfaceIndex 13 -IPAddress 192.168.1.5 -DefaultGateway 192.168.1.1 -PrefixLength 24
Set-DnsClientServerAddress -InterfaceIndex 13 -ServerAddresses 192.168.1.2,192.168.1.3
ОТКЛЮЧАЕМ IPV6 НА СЕТЕВОМ ИНТЕРФЕЙСЕ
Если использование IPv6 на сетевом интерфейсе пока не планируется, имеет смысл отключить его на интерфейсе для уменьшения «attacksurface».
Проверяем текущую настройку IPv6 на интерфейсе. Имя интерфейса берем из вывода командлетов Get-NetAdapter или Get-NetIPConfiguration.
Get-NetAdapterBinding -InterfaceDescription «Microsoft Hyper-V Network Adapter» | Where-Object -Property DisplayName -Match IPv6 | Format-Table –AutoSize
Отключить поддержку IPv6 на сетевом адаптере можно командлетом Disable-NetAdapterBinding. Данное действие будет аналогично снятию галки «Internet Protocol Version 6 (TCP/IPv6)» в настройках адаптера в графическом интерфейсе Windows.
Disable-NetAdapterBinding -InterfaceDescription «Microsoft Hyper-V Network Adapter» -ComponentID ms_tcpip6
Настройка межсетевого экрана (Advanced Firewall)
С внедрением PowerShell в Hyper-V Server появился удобный способ управления правилами межсетевого экрана, взамен устаревающего netsh. Просмотреть список комадлетов можно с помощью Get-Command.
Get-Command -Noun *Firewall* -Module NetSecurity
В качестве примера включим возможность традиционного управления межсетевым экраном через оснастку MMCс хоста управления. Для начала получим список правил, относящихся к удаленному управлению межсетевым экраном.
Get-NetFirewallRule | Where-Object -Property DisplayName -Match «firewall» | Format-List -Property Name, DisplayName, Enabled
Включаем оба правила.
Enable-NetFirewallRule -Name RemoteFwAdmin-In-TCP,RemoteFwAdmin-RPCSS-In-TCP
Теперь можно попробовать подключиться к оснастке MMC управления межсетевым экраном с хоста управления.
ВЗАИМОДЕЙСТВИЕ С SERVER MANAGER
Если гипервизор и хост управления не являются частью домена, а находятся в рабочей группе, как в нашем случае, то при попытке добавить сервер Hyper-V в Server Manager на удаленном хосте возникнет ошибка согласования WinRM.
Решается проблема довольно просто – достаточно добавить на Hyper-V Server в доверенные узлы WinRM на хосте управления и обновить текущее состояние в ServerManager.
Set-Item wsman:\localhost\Client\TrustedHosts HYPER-V01 -Concatenate –Force
Создание дискового хранилища для виртуальных машин
Теперь настало время создать хранилище файлов виртуальных машин и файлов виртуальных дисков. Для хранения данных будем использовать отдельный раздел на физическом диске. Для начала посмотрим список командлетов PowerShell, которые используются для управления носителями. Как обычно будем использовать для этого командлет Get-Command. Во втором случае мы получим список командлетов, служащих для получения информации.
Get-Command -Module Storage
Get-Command -Verb *Get* -Module Storage
Просмотрим список физических дисков на сервере.
Get-Disk
Создаем новый раздел на диске максимально возможного размера, назначаем букву D. Используем id из Get-Disk. После этого форматируем раздел в NTFS и указываем его метку.
New-Partition -DiskNumber 0 -DriveLetter D –UseMaximumSize
Format-Volume -DriveLetter D -FileSystem NTFS -NewFileSystemLabel «VMStore»
Убедимся в правильности проделанных нами операций с помощью оснастки MMC Disk Management на удаленном хосте, для этого включим соответствующие правила на межсетевом экране.
Enable-NetFirewallRule RVM-VDS-In-TCP,RVM-VDSLDR-In-TCP,RVM-RPCSS-In-TCP
Как мы видим, наш только что созданный диск прекрасно отображается в Disk Management.
Создадим папку на нашем разделе, где будем хранить настройки и файлы дисков виртуальных машин. Командлет New-Item позволяет создавать вложенные пути, так что нет необходимости запускать его два раза для каждой папки.
New-Item -Path «D:\Hyper-V\Virtual Hard Disks» -Type Directory
Создадим папки D:\Distrib и D:\ImportedVM, которые будем соответственно использовать для хранения дистрибутивов ОС и импортированных ВМ с других хостов виртуализации.
New-Item -Path D:\Distrib -ItemType Directory
New-Item -Path D:\ImportedVM -ItemType Directory
Для создания шары используем командлет New-SmbShare, с помощью которого дадим полный доступ по сети для группы локальных администраторов сервера.
New-SmbShare -Path D:\Distrib -Name Distrib -Description «OS Distributives» -FullAccess «BUILTIN\Administrators»
New-SmbShare -Path D:\ImportedVM -Name ImportedVM -Description «Imported VMs» -FullAccess » BUILTIN\Administrators»
Проверяем с помощью PowerShell и с помощью ServerManager с хоста управления.
Get-SmbShare -Name Distrib,ImportedVM | Format-List
Get-SmbShareAccess -Name Distrib,ImportedVM | Format-List
Общий список командлетов, относящихся к SMB (ServerMessageBlock), как обычно можно получить с помощью командлета Get-Command.
Get-Command -ModuleSmbShare
В заключение этой темы добавлю только то, что если на сервере не используется физический или логический RAID, то для повышения производительности и надежности работы с хранилищем ВМ целесообразно использование технологии Storage Pools (к примеру, такие командлеты, как New-StoragePool, New-Volume). Более подробнее об использовании Storage Pools совместно с Hyper-V я напишу в одной из будущих статей.
НАСТРАИВАЕМ ПАРАМЕТРЫ ГИПЕРВИЗОРА
Приступим к настройке параметров гипервизора. Основные параметры Hyper-V можно получить с помощью командлета Get-VMHost.
Get-VMHost | Format-List
Как мы видим из вывода командлета, пути ВМ и виртуальных дисков сейчас размещаются на одном разделе с ОС, что нас не устраивает ни с точки зрения скорости работы, ни с точки зрения надежности. Пропишем пути к созданным в прошлом разделе папкам с помощью командлета Set-VMHost.
Set-VMHost -VirtualMachinePath D:\Hyper-V -VirtualHardDiskPath ‘D:\Hyper-V\Virtual Hard Disks’
Проверим с помощью PowerShell…
Get-VMHost | Format-List
… и с помощью Hyper-V Manager.
Как я упоминал выше, в Hyper-V Server 2012 R2 возможно использование EnhancedSessionMode для ВМ, что позволит пробросить в ВМ локальные диски, принтеры, звук, использовать буфер обмена и многомониторные конфигурации. Давайте включим его.
Set-VMHost -EnableEnhancedSessionMode 1
СОЗДАДИМ ВИРТУАЛЬНЫЙ КОММУТАТОР
Виртуальный коммутатор Hyper-V (Hyper-V Extensible Switch) предназначен для организации сетевого взаимодействия между различными ВМ, между ВМ и хостом виртуализации, между ВМ и внешней средой. На самом деле у Hyper-V Extensible Switch обширное количество возможностей, много вкусного появилось в версии 2012 R2. Так что сейчас не будем углубляться в эту тему, и создадим простейший External Switch, который привязывается к сетевой карте Hyper-V Server, и организует взаимодействие ВМ с физической сетью.
Для начала проверим поддержку SR-IOV (Single-Root Input/Output (I/O) Virtualization).
Get-VMHost | Select-Object -Property «Iov*» | Format-List или
Get-NetAdapterSriov
В моем случае поддержки SR-IOV нет. Это связано с тем, что я немного схитрил, и в данной демонстрации у меня Hyper-V сервер запущен не на живом железе, а в виртуальной среде.
Получим список подсоединенных сетевых адаптеров
Get-NetAdapter | Where-Object -PropertyStatus -eqUp
Привязываем виртуальный свитч к сетевому адаптеру и при наличии SR-IOV включим его поддержку.
Внимание: Включить или отключить поддержку SR-IOV после создания свитча будет невозможно, для изменения этого параметра необходимо будет пересоздавать свитч.
New-VMSwitch -Name «Extenal_network» -NetAdapterName «Ethernet 2» -EnableIov 1
В моем случае Hyper-V выдает ошибку, опять же связанную с тем, что гипервизор сам запущен в виртуальной среде. На живом железе командлет создаст External Switch с именем «External_network» и привяжет его к сетевому адаптеру Ethernet 2. Виртуальный свитч также появится в списке сетевых адаптеров и на него будет перепривязаны все сетевые параметры физического адаптера Ethernet 2
Проверить можно с помощью командлетов Get-VMSwitch и Get-NetIPConfiguration –Detailed.
На этом этапе первоначальная настройка Hyper-V Server 2012 R2 закончена, и все готово для создания нашей первой виртуальной машины. Но об этом мы поговорим в следующей статье, использовать будем, естественно, PowerShell.
До скорых встреч!
В наших прошлых материалах мы рассматривали установку бесплатного гипервизора Hyper-V как одной из ролей Windows Server. Одним из недостатков этого метода является необходимость наличия лицензии на серверную OC, что в ряде случаев может привести к дополнительным затратам, в тоже время существует автономный продукт Hyper-V Server, который позволяет использовать одноименный гипервизор без каких-либо ограничений совершенно бесплатно. Однако он более сложен в установке и первоначальной настройке, которые и станут предметом нашей сегодняшней статьи.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
Прежде всего внесем ясность в термины. Hyper-V — это бесплатный гипервизор от компании Microsoft, работающий на платформе Windows. Первоначально поддерживались только серверные версии, но начиная с Windows 8 (редакции не ниже Pro) его можно использовать и в настольных ОС. Несмотря на то, что Microsoft явно не обозначает редакции гипервизора, новые поколения ОС содержат в себе новые версии Hyper-V. Так как степень интеграции Hyper-V в ОС достаточно велика, то вы не можете обновить версию гипервизора отдельно от версии ОС.
Если ориентироваться по версии конфигурации виртуальных машин, то можно говорить о восьми поколениях Hyper-V, версию 8.0 содержат Server 2016 и Windows 10 (1607). Наиболее распространенные Windows Server 2012 R2 (и Windows 8.1) имеют пятое поколение гипервизора.
Таким образом, если мы хотим использовать последнюю версию гипервизора, то нам нужна последняя версия ОС. А так как лицензии на Windows не допускают использования более поздних выпусков ОС, то бесплатный Hyper-V может оказаться не таким уж бесплатным. Аналогичные затруднения возникают при виртуализации уже существующих сред, покрытых лицензиями на более ранние версии Windows или виртуализации UNIX-систем. Специально для таких случаев Microsoft выпустила специальный продукт — Hyper-V Server.
Hyper-V Server — специальный выпуск на основе Windows Server Core с сильно урезанными функциями, обеспечивающими только работу гипервизора и его обслуживание. При этом, вопреки распространенному мнению, никакой разницы между Hyper-V Server и Hyper-V в качестве роли Windows Server нет. Это один и тот-же продукт.
Когда говорят о Hyper-V Server и Windows Server Core, то в первую очередь пытаются сделать упор на экономию ресурсов за счет отсутствия GUI, однако это мнение ошибочно. При создании данных продуктов вопрос экономии ресурсов стоял в последнюю очередь, да и глупо говорить о каком-либо «недостатке ресурсов» на гипервизоре.
Основная цель создания Windows Server Core и Hyper-V Server — это сокращение количества работающих служб и компонентов системы, что позволяет уменьшить площадь атаки (меньше служб — меньше уязвимостей) и существенно сократить затраты на сопровождение системы, например, меньшее количество перезагрузок при обновлении системы и меньшее время установки обновлений. Поэтому о внедрении именно Hyper-V Server стоит подумать даже если вы не испытываете затруднений с лицензированием.
Установка и первоначальная настройка Hyper-V Server
Образ для установки можно получить на официальном сайте, после регистрации, если у вас до сих пор не было учетной записи Microsoft. Процесс установки ничем не отличается от установки иных версий Windows и не должен вызвать затруднений.
По ее завершению нас встречает предельно лаконичный интерфейс с двумя открытыми окнами: командной строки и текстовой утилиты конфигурирования.
Если вы закрыли последнее, то чтобы снова вызвать данную утилиту просто выполните команду:
sconfig
А вот если вы закрыли все окна, включая окно командной строки, то можете внезапно оказаться перед черным экраном без средств управления системой вообще. В этом случае нажмите Ctrl+Shift+Esc (данная комбинация работает также через RDP) и при помощи вызванного диспетчера задач запустите нужный вам процесс, например, командную строку.
Перейдем к настройке. В первую очередь следует настроить сеть, указать имя сервера, его членство в нужной рабочей группе или домене и разрешить удаленный рабочий стол. Также, если вы хотите, чтобы ваш сервер отвечал на команду ping, то следует перейти в пункт 4) Настройка удаленного управления и выбрав опцию 3) Настройка отклика сервера на сообщение проверки связи явно разрешить это действие.
Затем укажите параметры обновления сервера и установите все имеющиеся на данный момент обновления. С ручной установкой связан один «сюрприз»: указанные в утилите символы не действуют, и чтобы скачать и установить все доступные обновления нужно при запросах вводить маленькую русскую букву т.
После завершения настройки и установки обновлений сервер следует перезагрузить. Здесь может возникнуть вполне закономерный вопрос: а что делать дальше? Как им управлять? Для управления Hyper-V Server понадобится еще один компьютер с установленными средствами управления Hyper-V, а настройки самого сервера можно производить из консоли MMC. Для этого создадим нужные разрешающие правила в брандмауэре. Для этого запустим PowerShell и последовательно выполним следующие команды:
powershell
Enable-NetFirewallRule -DisplayGroup "Удаленное управление Windows"
Enable-NetFirewallRule -DisplayGroup "Удаленное управление журналом событий"
Enable-NetFirewallRule -DisplayGroup "Удаленное управление томами"
Enable-NetFirewallRule -DisplayGroup "Дистанционное управление рабочим столом"
На этом настройку сервера следует считать законченной, можно проверить подключение к нему средствами RDP и, если все прошло нормально, переходить к настройке клиентской станции.
Настройка клиента для работы с Hyper-V Server
Для управления Hyper-V Server вам понадобится ПК с ОС не ниже Windows Server 2012R2 или Windows 8.1 редакции Pro или Enterprise, мы будем рассматривать дальнейшую настройку на примере клиентских ОС. Домашние и 32-разрядные версии ОС не подойдут, так как в них нет возможности установить диспетчер Hyper-V.
Так как сетевое обнаружение и общий доступ к файлам и принтерам на сервере выключен, то нужно добавить для него на DNS-сервера запись типа А, связывающую имя сервера и его IP-адрес или внести соответствующую строку в файл hosts, в нашем случае она выглядит так:
192.168.18.145 HV-CORE-2012R2
Если ваш сервер находится в рабочей группе, то следует добавить параметры подключения к нему, иначе клиент будет пытаться выполнить подключение из-под текущего пользователя.
cmdkey /add:ServerName /user:UserName /pass:password
где ServerName — имя сервера Hyper-V, UserName — имя администратора сервера Hyper-V и password — его пароль.
Если вы используете Windows 10, то дополнительно запустите командную строку (или консоль PowerShell) от имени администратора и выполните там команды:
winrm quickconfig
winrm set winrm/config/client '@{TrustedHosts="ServerName"}'
где ServerName — имя сервера Hyper-V.
Затем запустите оснастку dcomcnfg, через Win+R или из командной строки, и разверните дерево Службы компонентов — Компьютеры — Мой компьютер. После чего в по щелчку правой кнопки мыши выберите Свойства и перейдите на закладку Безопасность COM — Права доступа — Изменить ограничения и в открывшемся окне установите для пользователя АНОНИМНЫЙ ВХОД права Удаленный доступ.
Выполнив данные настройки можно запустить консоль MMC Управление компьютером и щелкнув правой кнопкой на одноименном корневом пункте выберите Подключение к другому компьютеру и укажите имя сервера Hyper-V.
После чего вы можете управлять удаленным сервером используя привычный набор инструментов. Для решения большинства повседневных задач оснастки Управление компьютером вполне достаточно, особенно если учесть, что большинство настроек делаются всего один раз.
Для того, чтобы использовать оснастку Управление дисками предварительно потребуется запустить службу Виртуальный диск, это можно сделать прямо здесь, через оснастку Службы.
Единственной недоступной оснасткой будет Диспетчер устройств, настроить его работу можно, но практического смысла в этом нет, так как работать он все равно будет в режиме «только чтение». К тому же по факту это не представляет проблемы: база драйверов Windows Server достаточно обширна и если вы проявили разумную предусмотрительность при выборе оборудования, то к вопросу драйверов вам вообще обращаться не придется.
В противном случае вам следует обратиться к инструментам командной строки для работы с драйверами: 1.6. Установка оборудования и управление драйверами (локально)
Наконец мы подошли к самому главному. Перейдем в классическую Панель управления — Программы и компоненты — Включение и отключение компонентов Windows и установим Средства управления Hyper-V.
После чего вы получите в свое распоряжение привычный инструмент управления Hyper-V который позволяет полноценно управлять гипервизором. Никаких особенностей в работе с Hyper-V сервер нет, поэтому мы не будем останавливаться на этом вопросе более подробно.
Для того, чтобы передавать на гипервизор файлы, например, образа для установки, можно воспользоваться стандартными общими ресурсами, скажем, набрав в адресной строке проводника:
\\ServerName\C$
вы попадете на диск С: сервера.
Для примера мы создали новую виртуалку и установили туда свежую версию Debian, не испытав каких-либо затруднений ни при работе с гипервизором, ни с самой виртуальной машиной.
Как видим, несмотря на несколько более сложный процесс установки и настройки Hyper-V Server представляет собой удобный и надежный инструмент, который к тому же можно использовать полностью бесплатно.
Научиться настраивать MikroTik с нуля или систематизировать уже имеющиеся знания можно на углубленном курсе по администрированию MikroTik. Автор курса, сертифицированный тренер MikroTik Дмитрий Скоромнов, лично проверяет лабораторные работы и контролирует прогресс каждого своего студента. В три раза больше информации, чем в вендорской программе MTCNA, более 20 часов практики и доступ навсегда.
TrueConf Server поддерживает возможность запуска на виртуальной машине, хотя это сложная процедура и мы не рекомендуем её неопытным пользователям – настройка корректной работы виртуальной машины бывает порой довольно сложным делом.
В этой инструкции мы покажем пример настройки виртуализатора Hyper-V на сервере Windows Server 2012 R2.
Данная статья носит исключительно ознакомительный характер и не гарантирует непременную и полную работу сервера после выполнения инструкции.
Техническая поддержка TrueConf не консультирует пользователей по вопросам настройки виртуальных машин и запуска TrueConf Server на них. Виртуальная машина – это внешняя система, работа которой не зависит от приложения TrueConf, и её настройка и поддержка целиком лежат на плечах пользователя.
Шаг 1. Проверьте поддержку аппаратной виртуализации
Виртуализатор Hyper-V из нашего примера является средством аппаратной виртуализации, то есть использует для виртуализации специальную процессорную архитектуру. Соответственно, на процессорах, где нет поддержки этой архитектуры, его запуск невозможен.
Чтобы проверить, поддерживает ли ваше оборудование аппаратную виртуализацию, откройте консоль Windows PowerShell, введите systeminfo.exe и нажмите Enter.
Команда выведет на экран консоли список текущих настроек системы. Из этого списка нас интересует только последний абзац, где пункт Виртуализация включена во встроенном ПО
должен быть отмечен как Да
.
Если соответствующий пункт не отмечен пометкой Да
, то установка Hyper-V на вашу систему невозможна.
Шаг 2. Добавьте сервер в список компонентов
Откройте диспетчер серверов. В меню сверху выберите Управление → Добавить роли и компоненты.
Выбор сервера
В открывшемся мастере добавления ролей и компонентов кликните на пункт Выбор сервера на панели слева и выберите нужный сервер. Если сервер в списке один, то он будет выбран автоматически. Нажмите Далее.
Роли сервера
В меню Роли сервера отметьте флажок рядом с надписью Hyper-V. После этого автоматически откроется окно в котором нужно активировать флажок Включить средства управления (если применимо). После этого нажмите кнопку Добавить компоненты и Далее.
Компоненты
В меню Компоненты отметьте необходимые для работы Hyper-V флажки:
- cредства удалённого администрирования сервера;
- cредства администрирования ролей;
- cредства упраления Hyper-V (2 пункта);
Виртуальные коммутаторы
Для того, чтобы виртуальная машина могла взаимодействовать с сетью, нужно наладить связь между ней и устройством, обеспечивающим выход в сеть. Перейдите в меню Виртуальные коммутаторы и отметьте сетевой адаптер, который вы хотите для этого использовать.
Хранилища по умолчанию
В пункте Хранилища по умолчанию нужно выбрать папки по умолчанию для расположения образов виртуальных жёстких дисков и файлов конфигурации виртуальной машины. Для этого нужно создать две отдельные папки. Рекомендуется предварительно отформатировать диск, на котором они находятся.
Подтверждения
В меню Подтверждения отметьте флажок Автоматический перезапуск конечного сервера, если требуется.
После этого нажмите кнопку Установить внизу и дождитесь окончания установки.
После нескольких перезагрузок и входа в систему мастер добавления ролей и компонентов сообщит об окончании установки. После этого нажмите кнопку Закрыть.
Шаг 3. Создайте виртуальную машину
Откройте диспетчер Hyper-V. На правой панели выберите пункт Создать → Виртуальная машина.
Имя виртуальной машины
Появится мастер создания виртуальной машины. Нажав один раз кнопку Далее, вы перейдёте к этапу установки Укажите имя и местонахождение (список этапов и текущий этап обозначаются в левой части окна). Здесь в соответствующем поле укажите имя виртуальной машины.
Выбор поколения
В следующем пункте выберите поколение виртуальной машины. В нашем примере мы использовали Windows 7, которой соответствует первое поколение.
Выделяемая память
Укажите количество выделяемой памяти. Мы рекомендуем выделять не менее 1 Гб, то есть 1024 Мб.
Настройка сети
В разделе Настройка сети выберите тот виртуальный коммутатор, который вы выбрали при добавлении компонента в меню Виртуальный коммутатор.
Виртуальный жёсткий диск
Далее потребуется создать или выбрать уже имеющийся виртуальный жёсткий диск. В нашем примере мы создаём новый жёсткий диск размером 40 Гб.
Источник установки операционной системы
Выберите способ установки операционной системы. В нашем примере мы устанавливаем её с DVD-диска.
В меню, Сводка, ничего заполнять не нужно. Нажмите Готово и ждите окончания настройки виртуальной машины.
Шаг 4. Включите виртуальную машину
После окончания настройки вы вернётесь в диспетчер Hyper-V. Там в правом меню в группе кнопок вашей виртуальной машины (в нашем примере, напомним, она называется vm1) нажмите Подключить.
В открывшемся после этого окне должна появится надпись Виртуальная машина выключена. Соответственно, вам нужно её включить. Для её включения нажмите Действие → Пуск.
Если вы точно следовали инструкции и указали корректный носитель или .iso образ с дистрибутивом системы, машина запустится и начнётся установка Windows.
Шаг 5. Установите TrueConf Server
После успешной настройки виртуальной машины остаётся установить на неё TrueConf Server. Воспользовавшись нашей инструкцией, вы сможете сделать это за 15 минут.
В этом документе описывается установка и первоначальная настройка Microsoft Windows Hyper-v server 2012 r2 core на не серверное (десктопное) оборудование, дополнительные утилиты управления, различные особенности; перенос виртуальных машин (VM) с других hyper-v хостов; полезные ссылки.
Все описанные здесь программные продукты бесплатны для коммерческого и некоммерческого использования. В результате установки мы получаем довольно удобную в управлении бесплатную среду виртуализации на базе гипервизора Hyper-V.
Установка
Устанавливать Hyper-v server рекомендуется на серверное оборудование, но для тестов можно использовать десктопное с некоторыми ухищрениями.
Язык
Рекомендуется устанавливать английскую версию сервера из-за возможных проблем с названиями переменных и т.п. Установленная русская версия пока проблем не вызвала.
sconfig
После установки из средств управления на сервере присутствуют только командная строка (с возможностью запуска powershell) и средство первоначального конфигурирования сервера sconfig.
Запуск sconfig из командной строки: sconfig
Запуск powershell из командной строки: powershell
Драйверы
При установке на десктоп возможны проблемы с установкой драйверов. Драйверы Intel для чипсета были установлены с CD без проблем. Возникли проблемы с установкой драйвера для сетевой карты.
Сетевая карта I217-V (серверная называется просто i217). Драйверы есть только под серверную карту.
Нужно:
- скачать свежие драйверы для windows 8
- найти в них файл со строками I217-V. Будет найдено несколько файлов в разных папках — NDIS64 для Windows 8.1/2012R2, NDIS63 для Windows 8/2012, NDIS62 для Windows 7/2008 R2 и NDIS61 is for Windows Vista/2008
- редактируем тот, который нужен для нашей ОС (в данном случае PRO1000\Winx64\NDIS64\e1d64x64.inf)
- добавляем необходимые строки, как это описано здесь и сохраняем файл
- отключаем проверку целостности драйверов и включаем тестовый режим (также нужно отключить UEFI secure boot в BIOS, иначе не получится выполнить вторую команду):
bcdedit -set loadoptions DISABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING ON - если вторая команда не сработает, можно попробовать отключение DEP — bcdedit.exe /set {current} nx AlwaysOff Предотвращение выполнения данных (Data Execution Prevention, DEP) – это набор программных и аппаратных технологий, позволяющих выполнять дополнительные проверки содержимого памяти и предотвращать запуск вредоносного кода
- перезагрузить
- запустить инсталлятор или подсунуть наш измененный inf файл в качестве драйвера для сетевого интерфейса
- разрешить проверку целостности драйверов и выключить тестовый режим:
bcdedit -set loadoptions ENABLE_INTEGRITY_CHECKS
bcdedit -set TESTSIGNING OFF (возможно еще bcdedit.exe /set {current} nx AlwaysOn ) - перезагрузиться
CoreConfigurator
Ставим CoreConfigurator
Удобное управление установкой драйверов и пр. в Windows Core.
Настройка сетевого интерфейса
По каким-то причинам во время установки не создается никаких виртуальных свитчей, так что виртуальные машины по умолчанию не имеют связи с внешним миром. Исправим это — создадим простейший свитч-бридж к физическому адаптеру.
Запустим powershell во второй консоли.
1) Узнаем под какими именами фигурируют адаптеры. Для этого выполним команду Get-NetAdapter
PS C:\Users\Administrator> Get-NetAdapter
Name InterfaceDescription ifIndex Statu
s
---- -------------------- ------- -----
Ethernet 5 Broadcom BCM5708C NetXtreme II Gi...#47 16 Up
Ethernet 4 Intel(R) PRO/1000 PT Dual Port Ser...#2 15 Di...
Ethernet 3 Intel(R) PRO/1000 PT Dual Port Serve... 14 Di...
Ethernet 2 Broadcom BCM5708C NetXtreme II Gi...#49 13 Up
2) Создадим виртуальный свитч привязанным к адаптеру Ethernet 5
PS C:\Users\Administrator> New-VMSwitch -Name "bridged" -NetAdapterName "Ethernet 5"
Name SwitchType NetAdapterInterfaceDescription
---- ---------- ------------------------------
bridged External Broadcom BCM5708C NetXtreme II GigE (NDIS VBD Client) #47
5nine Manager Free для Hyper-V
Устанавливаем бесплатное приложение 5nine Manager Free для Hyper-V.
Позволяет
- Управление Hyper-V с помощью графического интерфейса пользователя (GUI)
- Поддержка нескольких версий Hyper-V
- Подключение к виртуальным машинам через RDP (не проверено)
Удаленное управление
http://sergiuz-it.blogspot.ru/2013/09/hyper-v-server-2012.html
Расположение файлов Hyper-v
Understanding where your virtual machine files are [Hyper-V]
Создание виртуальных машин
При создании виртуальных машин рекомендуется выделять место под диски статически. В случае динамического изменения размера диск может разрастаться до больших размеров (больше самого диска). Для дисков с операционной системой Windows это исправляется следующим образом:
- делаем дефрагментация на гостевой vm
- запускаем в настройках vm кнопку compact
Для других гостевых ОС microsoft предлагает вместо дефрагментации искать утилиты, которые заменяют свободное место на диске нулями.
Проблема описана здесь.
Перенос виртуальных машин
Импорт с помощью PowerShell. Для того, чтобы просто зарегистрировать ВМ по месту, надо выполнить команду:
Import-VM -Path ′D:\Hyper-V\SC3\Virtual Machines\4e782fc5-8a82-4311-8627-b69ab2e894f5.xml′
В параметре Path указываем расположение xml-файла конфигурации. Для копирования ВМ в другое место с тем же ID воспользуемся параметром Copy, а для генерации нового идентификатора используем параметр GenerateNewId:
Import-VM -Path ′D:\Hyper-V\SC3\Virtual Machines\4e782fc5-8a82-4311-8627-b69ab2e894f5.xml′ -Copy -GenerateNewId
Полезная ссылка
Проверка на совместимость
Иногда при переносе ВМ на другой хост могут возникнуть проблемы с совместимостью. В этом случае просто импортировать машину не получится, при попытке будет выдана ошибка. Для выяснения причин несовместимости можно воспользоваться командлетом Compare-VM. Вот типичный пример — импорт не удался, в сообщении фигурирует ошибка в конфигурации. Попробуем уточнить, в чем проблема, для чего выведем отчет о совместимости командой:
Compare-VM -Path ′D:\SC3\Virtual Machines\4e782fc5-8a82-4311-8627-b69ab2e894f5.xml′
Как видно из отчета, в строке Incompatibilities стоит код ошибки, что означает проблему с совместимостью.
Для уточнения проблемы еще раз выведем отчет о совместимости и поместим его в переменную:
$report = Compare-VM -Path ′D:\SC3\Virtual Machines\4e782fc5-8a82-4311-8627-b69ab2e894f5.xml′
Затем извлечем причину несовместимости:
$report.Incompatibilities | ft -AutoSize
Как видно из сообщения, проблема в отсутствии на данном хосте виртуального свича с именем Private. Этот свич прописан в конфигурации ВМ, и для успешного импорта его надо оттуда удалить. Сделаем это с помощью команды:
$report.Incompatibilities[0].Source | Disconnect-VMNetworkAdapter
Затем проверим еще раз совместимость:
Compare-VM -CompatibilityReport $report
И поскольку проблема устранена, то импортируем машину командой:
Import-VM -CompatibilityReport $report
ВНИМАНИЕ! при экспорте мы получаем точную копию виртуальной машины, включая идентификатор безопасности (SID), имя и IP-адрес (при статической адресации). Поэтому, во избежании конфликтов, при развертывании такой машины надо быть крайне осторожным, и делать это желательно в изолированной среде, особенно если виртуальная машина является членом домена AD.
Приложения
Основные команды для управления hyper-v через powershell
Подключение к виртуальной машине
New-VMConnectSession
Манипулирование состоянием виртуальных машин
Get-VMState, Set-VMState, Convert-VmState,
Ping-VM, Test-VMHeartBeat, Shutdown-VM, Start-VM, Stop-VM, Suspend-VM
Get-VMKVP, Add-KVP, Remove-KVP, Get-VMJPEG
Возможность делать бэкапы, экспорт виртуальных машин и снятие снэпшотов
Export-VM, Import-VM, Get-VMSnapshot, Choose-VMSnapshot, Apply-VMSnapshot, New-VMSnapshot ,Remove-VMSnapshot, Rename-VMSnapShot, Update-VMSnapshot, Get-VMSnapshotTree, Get-VmBackupScript
Добавление и удаление вирт. машин, настройка их свойств
New-VM, Remove-VM, Set-VM, Get-VMCPUCount, Set-VMCPUCount, Get-VMMemory, Set-VMMemory, Set-VMSerialPort
Управление дисковыми контроллерами
Get-VMDiskController
Add-VMSCSIController, Remove-VMSCSIcontroller
Get-VMDriveByController, Add-VMDRIVE, Remove-VMdrive
Get-VMDiskByDrive, Add-VMDISK, Set-VMDisk, Get-VMDisk
Get-VMFloppyDisk, Add-VMFloppyDisk
Add-VMNewHardDisk
Управление сетевыми интерфейсами
Get-VMNic, List-VMNic, Choose-VMNIC, Add-VMNIC, Remove-VMNIC, Set-VMNICAddress, Set-VMNICConnection, Get-VMNicport,
Get-VMnicSwitch, Choose-VMSwitch, New-VMSwitchPort, Get-VMByMACaddress, Choose-VMExternalEthernet,
New-VMExternalSwitch, New-VMInternalSwitch,New-VmPrivateSwitch
Работа с VHD файлами
Get-VHDDefaultPath, Get-VHDInfo, New-VHD, Compact-VHD, Test-VHD,Convert-VHD,Merge-VHD,Mount-VHD, Unmount-VHD
PowerShell+Hyper-V
Полезные ссылки
Как я перестал беспокоиться и полюбил Hyper-V Server
http://www.vmstart.ru/opisaniya-i-czeny/556-nastrojka-hyper-v-server-2012-r2#link1