В этой статье я хочу поделиться своим опытом установки и настройки гипервизора Hyper-V Server 2012R2 от компании Microsoft. Итак, приступим. Дано: 2 сервера и iscsi СХД.
Скачиваем образ для установки сервера с сайта Microsoft. Если вы располагаете развернутой службой Windows Deployment Services или установленным «Комплект средств для развертывания и оценки Windows» (Windows ADK), можно полученный по ссылке выше дистрибутив архиватором 7-zip распаковать в папку, например, D:\W2012\x64\dvd. Затем полученные
Обратную сборку распакованного дистрибутива в загрузочный iso можно выполнить например программой Ultraiso, открыв в ней исходный образ и добавив в папку Sources файл install.wim из папки D:\W2012\x64\dvd\sources и сохранить полученный образ. Опять же все описанные выше манипуляции можно и не проводить, обновленный образ ускорит развертывание сервера Hyper-V
Если исходный диск для установки сервера превышает в размере 2Тб, то для того чтобы иметь возможность использовать все возможное пространство диска необходимо перед началом установки сконвертировать диск в GPT и разметить его. В процессе установки это сделать невозможно.
Необходимо загрузиться в режиме PE с инсталляционного диска и запустить diskpart.
Convert MBR to GPT using DISKPART
Для дальнейшей установки необходимо в BIOS сервера выставить загрузку в UEFI режиме (но это в случае если у вас локальное дисковое хранилище сервера превышает 2 ТБ, если нет то этот шаг можно пропустить)
В sconfig включаем Remote Desktop (пункт 7-e-2):
Включаем ping (пункт 4-3):
В командной строке запускаем powershell и отключаем firewall (можно пропустить):
Задание пула MAC адресов для виртуального коммутатора (менять выделенные значения, т.е. берем последний октет ip-адреса (например 192.168.251.11) mgmt-интерфейса и переводим его в шестнадцатеричный вид):
Это нужно для того, чтобы MAC адреса виртуальных серверов, расположенных на разных hyper-v host, не пересекались. По умолчанию они выдаются из одного диапазона и могут получиться одинаковыми, как у меня и произошло при внедрении на одном объекте.
Получение списка сетевых адаптеров:
Нужные нам – NIC1 и NIC2.
Объединение адаптеров в группу (Team1):
Создание виртуального коммутатора (vSwitch0):
Создание виртуального сет. адаптера (Management) и подключение его к виртуальному коммутатору:
Порты на физическом коммутаторе настроены в trunk и Vlan 251. В данном примере это подсеть для управления Hyper-V сервером.
Настройка IP-адреса, маски, шлюза и DNS сервера на виртуальном адаптере (MGMT): пункт 8 меню sconfig (например: 192.168.251.11/24, gw 192.168.251.1):
После этого сервер должен пинговаться и можно использовать удаленный доступ.
Подключаемся по RDP, создаем виртуальный сетевой адаптер (Cluster) и подключаем его к виртуальному коммутатору:
Будем исходить из того, что СХД уже настроена и подключена в соответствующие порты коммутатора. Настроим ip-адреса для адаптеров iscsi интерфейса:
В командной строке запускаем powershell:
С сетевыми адаптерами Broadcom NetXtreme вылез неприятный баг, который выражался в том, что на драйверах, идущих в образе, была очень низкая скорость передачи по сети от 3 до 5 МБайт/с на гигабитном подключении. Низкая производительность сети —
Исправляем, либо обновляем драйвера вручную.
Установка необходимых ролей, должно быть подключение сервера к интернету:
Это если вы не модифицировали образ, как описано в п.1.
Добавляем поддержку SAS и iSCSI в оснастке mpiocpl и после перезагрузки в диспетчере дисков LUN-ы не будут двоиться, если сервер подключен двумя и более путями.
Проверка:
При добавлении нового volume на СХД выполняем в powershell:
Настройка времени (после добавления сервера в домен Windows время будет синхронизироваться с PDC):
В командной строке:
Если необходимо, то вручную:
p.s.
Подправил немного текст и форматирование
Настройка кластера будет описана позднее.
1. Подготовка образа
Скачиваем образ для установки сервера с сайта Microsoft. Если вы располагаете развернутой службой Windows Deployment Services или установленным «Комплект средств для развертывания и оценки Windows» (Windows ADK), можно полученный по ссылке выше дистрибутив архиватором 7-zip распаковать в папку, например, D:\W2012\x64\dvd. Затем полученные
обновления windows
скопировать в папку D:\W2012\x64\upd, создать папку D:\W2012\mnt и с помощью следующего батника обновить образ. 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
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
Скрипт обновления и модификации образа
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
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.
Подправил немного текст и форматирование
Настройка кластера будет описана позднее.