Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Область применения: гиперконвергентные развертывания Azure Local
В этой статье описывается развертывание виртуализированного экземпляра Azure Local на хост-системе под управлением Windows Server 2022, Windows 11 или более поздней операционной системы (ОС). Узел должен иметь Hyper-V включен для развертывания.
Вам нужны права администратора для Azure Local виртуального развертывания и должны быть знакомы с существующим решением Azure Local. Развертывание может занять около 2,5 часа.
Внимание
Виртуальное развертывание Azure Local предназначено только для образовательных и демонстрационных целей.
служба поддержки Майкрософт не поддерживает виртуальные развертывания.
Предварительные условия
Оборудование, сеть и другие предварительные требования для виртуального развертывания приведены следующим образом:
Требования к физическому узлу
Ниже приведены минимальные требования для успешного развертывания Azure Local.
Перед тем как начать, убедитесь в следующем.
У вас есть доступ к физической системе узла, работающей Hyper-V на Windows Server 2022, Windows 11 или более поздней версии. Этот узел используется для обеспечения виртуального развёртывания Azure Local.
У вас достаточно емкости. Для выполнения фактических рабочих нагрузок, таких как виртуальные машины или контейнеры, требуется больше емкости.
Физическое оборудование, используемое для виртуального развертывания, соответствует следующим требованиям:
Компонент Минимум Процессор Intel VT-x или AMD-V с поддержкой вложенной виртуализации. Дополнительные сведения см. в разделе "Поддержка технологии виртуализации процессоров Intel®"? Память Физический узел должен иметь не менее 48 ГБ ОЗУ для развертываний одного виртуального узла. Виртуальная машина виртуального узла должна иметь не менее 32 ГБ ОЗУ.
Физический узел должен иметь не менее 72 ГБ ОЗУ для двух развертываний виртуальных узлов. Каждая виртуальная машина виртуального узла должна иметь не менее 32 ГБ ОЗУ для развертывания и применения обновлений.Сетевые адаптеры хоста Один сетевой адаптер. Хранение 1 ТБ Твердотельный накопитель (SSD).
Требования к виртуальному узлу
Перед началом работы убедитесь, что каждая система виртуального узла может выделить следующие ресурсы для подготовки виртуализированного экземпляра Azure Local:
| Компонент | Требование |
|---|---|
| Тип виртуальной машины | Включена безопасная загрузка и доверенный модуль платформы (TPM). |
| виртуальные ЦП | Четыре ядра. |
| Память | Не менее 32 ГБ. |
| Сеть | По крайней мере два сетевых адаптера, подключенных к внутренней сети. Спуфинг MAC должен быть включен. |
| Загрузочный диск | Один диск для установки операционной системы Azure Stack HCI из ISO. По крайней мере 127 ГБ. |
| Жесткие диски для Локальные дисковые пространства | Два динамически расширяющихся диска. Максимальный размер диска составляет 1024 ГБ. |
| Синхронизация времени в средствах интеграции Hyper-V | Нетрудоспособный. |
Примечание.
Эти требования являются минимальными для успешного развертывания Azure Local. Увеличьте емкость, например виртуальные ядра и память при выполнении фактических рабочих нагрузок, таких как виртуальные машины или контейнеры.
Настройка виртуального коммутатора
При развертывании Azure Local в виртуальной среде можно использовать существующие сети и использовать IP-адреса из этой сети, если они доступны. В таком случае необходимо просто создать внешний коммутатор и подключить все виртуальные сетевые адаптеры к виртуальному коммутатору. Виртуальные узлы имеют подключение к физической сети без дополнительной настройки.
Однако если физическая сеть, в которой планируется развернуть виртуальную среду Azure Local, не хватает IP-адресов, можно создать внутренний виртуальный коммутатор с поддержкой NAT, чтобы изолировать виртуальные узлы от физической сети, сохраняя исходящее подключение к Интернету.
Ниже перечислены шаги для двух вариантов.
Развертывание с помощью внешнего виртуального коммутатора
Параметры командлета new-vmswitch могут отличаться в зависимости от операционной системы Windows. Дополнительные сведения см. в статье New-VMSwitch.
На физическом компьютере узла выполните следующую команду PowerShell, чтобы создать внешний виртуальный коммутатор:
New-VMSwitch -Name "external_switch_name" -SwitchType External -NetAdapterName "network_adapter_name" -AllowManagementOS $true
Развертывание с включенным внутренним виртуальным коммутатором и NAT
На физическом компьютере узла выполните следующую команду PowerShell, чтобы создать внутренний виртуальный коммутатор. Использование этого ключа или переключателя гарантирует изоляцию развертывания Azure Local.
New-VMSwitch -Name "internal_switch_name" -SwitchType Internal -NetAdapterName "network_adapter_name"
После создания внутреннего виртуального коммутатора на узле создается новый сетевой адаптер. Необходимо назначить IP-адрес этому сетевому адаптеру, чтобы он стал шлюзом по умолчанию для ваших виртуальных узлов после подключения к внутренней сети этого коммутатора. Кроме того, необходимо определить подсеть сети NAT, в которой подключены виртуальные узлы.
В следующем примере сценария создается сеть NAT с префиксом HCINAT, при этом IP-адрес 192.168.44.0/24 определяется как шлюз по умолчанию для сети через интерфейс на хосте.
#Check interface index of the new network adapter on the host connected to InternalSwitch:
Get-NetAdapter -Name "vEthernet (InternalSwitch)"
#Create the NAT default gateway IP on top of the InternalSwitch network adapter:
New-NetIPAddress -IPAddress 192.168.44.1 -PrefixLength 24 -InterfaceAlias "vEthernet (InternalSwitch)"
#Create the NAT network:
New-NetNat -Name "HCINAT"-InternalIPInterfaceAddressPrefix 192.168.44.0/24
Создание виртуального узла
Создайте виртуальную машину для обслуживания виртуального узла со следующей конфигурацией. Эту виртуальную машину можно создать с помощью диспетчера Hyper-V или PowerShell:
Hyper-V Manager. Дополнительные сведения см. в статье Создание виртуальной машины с помощью менеджера Hyper-V для создания зеркального отображения физической сети управления.
Командлеты PowerShell. Перед запуском командлетов PowerShell необходимо настроить параметры конфигурации виртуальной машины, упомянутые в требованиях к виртуальному хосту.
Выполните следующие действия, чтобы создать пример виртуальной машины с именем Node1 с помощью командлетов PowerShell:
Создайте виртуальную машину:
New-VHD -Path "your_VHDX_path" -SizeBytes 127GB New-VM -Name Node1 -MemoryStartupBytes 32GB -VHDPath "your_VHDX_path" -Generation 2 -Path "VM_config_files_path"Отключите динамическую память:
Set-VMMemory -VMName "Node1" -DynamicMemoryEnabled $falseОтключите контрольные точки виртуальной машины:
Set-VM -VMName "Node1" -CheckpointType DisabledУдалите сетевой адаптер по умолчанию, созданный во время создания виртуальной машины на предыдущем шаге:
Get-VMNetworkAdapter -VMName "Node1" | Remove-VMNetworkAdapterДобавьте новые сетевые адаптеры на виртуальную машину с помощью пользовательских имен. В этом примере добавляются четыре сетевых адаптера, но при необходимости можно добавить только два. Наличие четырех сетевых адаптеров позволяет протестировать два сетевых намерения (например,
Mgmt_ComputeиStorage), каждая из которых использует по два сетевых адаптера.Add-VmNetworkAdapter -VmName "Node1" -Name "NIC1" Add-VmNetworkAdapter -VmName "Node1" -Name "NIC2" Add-VmNetworkAdapter -VmName "Node1" -Name "NIC3" Add-VmNetworkAdapter -VmName "Node1" -Name "NIC4"Подключите все сетевые адаптеры к виртуальному коммутатору. Укажите имя созданного виртуального коммутатора, будь то внешний без NAT или внутренний с помощью NAT:
Get-VmNetworkAdapter -VmName "Node1" | Connect-VmNetworkAdapter -SwitchName "virtual_switch_name"Включите подделку MAC-адресов и объединение всех сетевых адаптеров на узле виртуальной машины Node1, если планируется использовать вложенную виртуализацию.
- Подмена MAC-адресов позволяет сетевому адаптеру выглядеть как другой адаптер, изменяя свой адрес управления доступа (MAC).
- NetworkATC объединяет виртуальные сетевые интерфейсы (vNICs) для задач управления и вычисления, а также, в зависимости от конфигурации, для vNICs хранения.
Get-VmNetworkAdapter -VmName "Node1" | Set-VmNetworkAdapter -MacAddressSpoofing On -AllowTeaming OnВключите порт магистрали (только для развертываний с несколькими узлами) для всех сетевых адаптеров на виртуальной машине
Node1. Этот скрипт настраивает сетевой адаптер определенной виртуальной машины для работы в режиме магистрали. Эта конфигурация обычно используется в развертываниях с несколькими узлами, в которых требуется разрешить взаимодействие нескольких виртуальных сетей локальных сетей (VLA) через один сетевой адаптер:Get-VmNetworkAdapter -VmName "Node1" | Set-VMNetworkAdapterVlan -Trunk -NativeVlanId 0 -AllowedVlanIdList 0-1000Создайте новый предохранитель ключа и назначьте его Node1. На этом шаге используется локальный ненадежный опекун, который подходит для лабораторных и тестовых сред.
# Create a local guardian for lab/testing if one doesn't already exist New-HgsGuardian -Name "UntrustedGuardian" -GenerateCertificates $owner = Get-HgsGuardian -Name "UntrustedGuardian" $kp = New-HgsKeyProtector -Owner $owner -AllowUntrustedRoot Set-VMKeyProtector -VMName "Node1" -KeyProtector $kp.RawDataВключите vTPM для
Node1. Включив vTPM на виртуальной машине, вы сможете использовать BitLocker и другие функции, требующие наличия доверенного платформенного модуля. После выполнения этой командыNode1будет включен vTPM, если оборудование хост-компьютера и конфигурация виртуальной машины поддерживают эту функцию.Enable-VmTpm -VMName "Node1"Измените виртуальные процессоры на
4:Set-VmProcessor -VMName "Node1" -Count 4Создайте дополнительные диски для использования в качестве одного для загрузочного диска и двух жестких дисков для Локальные дисковые пространства. После выполнения этих команд в каталоге будут созданы три новых VHDX, как показано в
C:\vms\Node1этом примере:new-VHD -Path "C:\vms\Node1\OS.vhdx" -SizeBytes 127GB new-VHD -Path "C:\vms\Node1\s2d1.vhdx" -SizeBytes 1024GB new-VHD -Path "C:\vms\Node1\s2d2.vhdx" -SizeBytes 1024GBПодключите диски к вновь созданным VHDX для виртуальной машины. В этих командах два VHD, расположенные в каталоге
C:\vms\Node1и названыs2d1.vhdxпоs2d2.vhdx, добавляются вNode1. КаждаяAdd-VMHardDiskDriveкоманда добавляет один виртуальный жесткий диск к виртуальной машине, поэтому команда повторяется шесть раз с разными-Pathзначениями параметров.После этого у виртуальной машины
Node1подключены два виртуальных жестких диска. Эти VHDX используются для включения Локальные дисковые пространства на виртуальной машине, что необходимо для развертываний Azure Local.Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\OS.vhdx" Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d1.vhdx" Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d2.vhdx"Отключить синхронизацию времени:
Get-VMIntegrationService -VMName "Node1" |Where-Object {$_.name -like "T*"}|Disable-VMIntegrationServiceВключите вложенную виртуализацию:
Set-VMProcessor -VMName "Node1" -ExposeVirtualizationExtensions $trueЗапустите виртуальную машину:
Start-VM "Node1"
Установка ОС на виртуальных машинах узла
Выполните следующие действия, чтобы установить и настроить ОС Azure Stack HCI на виртуальных машинах узла:
Скачайте версию 23H2 для развертывания в локальной среде Azure и Установите операционную систему Azure Stack HCI.
Обновите пароль, так как это первый запуск виртуальной машины. Убедитесь, что пароль соответствует требованиям Azure сложности:
- Пароль составляет не менее 14 символов.
- Пароль включает по крайней мере следующее:
- Один прописный символ.
- Один символ нижнего регистра.
- Одно число.
- Один специальный символ.
После изменения пароля средство настройки сервера (SConfig) автоматически загружается. Выберите вариант
15выхода из командной строки и выполните следующие действия.Запустите SConfig, выполнив следующую команду:
SConfigСведения об использовании SConfig см. в разделе "Настройка с помощью средства настройки сервера" (SConfig).
Измените имя узла на
Node1. Используйте параметр2дляComputer nameв SConfig.Изменение имени узла приводит к перезапуску. При появлении запроса на перезапуск введите
Yesи дождитесь завершения перезапуска. SConfig запускается автоматически снова.На физическом узле запустите
Get-VMNetworkAdapterиForEach-Objectкомандлеты, чтобы настроить четыре имена сетевых адаптеров для виртуальной машиныNode1, сопоставив назначенные MAC-адреса с соответствующими сетевыми адаптерами в гостевой ОС.- Командлет
Get-VMNetworkAdapterиспользуется для получения объекта сетевого адаптера для каждой сетевой карты на виртуальной машине, где-VMNameпараметр задает имя виртуальной машины, а-Nameпараметр указывает имя сетевого адаптера. ЗатемMacAddressполучает доступ к свойству объекта сетевого адаптера, чтобы получить MAC-адрес:
Get-VMNetworkAdapter -VMName "Node1" -Name "NIC1"MAC-адрес — это строка шестнадцатеричных чисел. Командлет
ForEach-Objectиспользуется для форматирования этой строки путем вставки дефисов через определенные интервалы. В частности,Insertметод строкового объекта используется для вставки дефиса на 2-е, 5-е, 8-е, 11-е и 14-е позиции в строке. Затемjoinоператор используется для объединения результирующего массива строк в одну строку с пробелами между каждым элементом.Команды повторяются для каждого из четырех сетевых адаптеров на виртуальной машине, а окончательный отформатированный MAC-адрес для каждой сетевой карты хранится в отдельной переменной:
($Node1finalmacNIC1, $Node1finalmacNIC2, $Node1finalmacNIC3, $Node1finalmacNIC4).- Следующий скрипт выводит окончательный отформатированный MAC-адрес для каждой сетевой карты:
$Node1macNIC1 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC1" $Node1macNIC1.MacAddress $Node1finalmacNIC1=$Node1macNIC1.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "} $Node1finalmacNIC1 $Node1macNIC2 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC2" $Node1macNIC2.MacAddress $Node1finalmacNIC2=$Node1macNIC2.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "} $Node1finalmacNIC2 $Node1macNIC3 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC3" $Node1macNIC3.MacAddress $Node1finalmacNIC3=$Node1macNIC3.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "} $Node1finalmacNIC3 $Node1macNIC4 = Get-VMNetworkAdapter -VMName "Node1" -Name "NIC4" $Node1macNIC4.MacAddress $Node1finalmacNIC4=$Node1macNIC4.MacAddress|ForEach-Object{($_.Insert(2,"-").Insert(5,"-").Insert(8,"-").Insert(11,"-").Insert(14,"-"))-join " "} $Node1finalmacNIC4- Командлет
Получите учетные данные локального администратора виртуальной
Node1машины и переименуйте:Node1$cred = get-credentialПереименуйте и сопоставьте сетевые адаптеры
Node1. Переименование основано на MAC-адресах сетевых адаптеров, назначенных Hyper-V при первом запуске виртуальной машины. Эти команды должны выполняться непосредственно на хосте.Get-NetAdapterИспользуйте команду для получения физических сетевых адаптеров на виртуальной машине, отфильтруйте их на основе MAC-адреса, а затем переименуйте их в соответствующий адаптер с помощью командлетаRename-NetAdapter.Повторите этот процесс для каждого из четырех сетевых адаптеров на виртуальной машине, указав отдельно MAC-адрес и новое имя каждого адаптера. Это устанавливает сопоставление между именем сетевых адаптеров в диспетчере Hyper-V и именем сетевых адаптеров в ОС виртуальной машины:
Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC1) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC1} | Rename-NetAdapter -NewName "NIC1"} -ArgumentList $Node1finalmacNIC1 Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC2) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC2} | Rename-NetAdapter -NewName "NIC2"} -ArgumentList $Node1finalmacNIC2 Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC3) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC3} | Rename-NetAdapter -NewName "NIC3"} -ArgumentList $Node1finalmacNIC3 Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {param($Node1finalmacNIC4) Get-NetAdapter -Physical | Where-Object {$_.MacAddress -eq $Node1finalmacNIC4} | Rename-NetAdapter -NewName "NIC4"} -ArgumentList $Node1finalmacNIC4Отключите протокол конфигурации динамического узла (DHCP) на четырех сетевых адаптерах для виртуальной машины
Node1, выполнив следующие команды.Примечание.
Интерфейсы не получают IP-адреса с DHCP-сервера автоматически и вместо этого должны иметь IP-адреса, назначенные им вручную:
Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC1" -Dhcp Disabled} Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC2" -Dhcp Disabled} Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC3" -Dhcp Disabled} Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-NetIPInterface -InterfaceAlias "NIC4" -Dhcp Disabled}Задайте IP-адрес управления, шлюз и DNS. После выполнения следующих команд
Node1настроят сетевой интерфейсNIC1с указанным IP-адресом, маской подсети, шлюзом по умолчанию и адресом DNS-сервера. Убедитесь, что IP-адрес управления может разрешать Active Directory и имеет исходящее подключение к Интернету:Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {New-NetIPAddress -InterfaceAlias "NIC1" -IPAddress "192.168.44.201" -PrefixLength 24 -AddressFamily IPv4 -DefaultGateway "192.168.44.1"} Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Set-DnsClientServerAddress -InterfaceAlias "NIC1" -ServerAddresses "192.168.1.254"}Включите роль Hyper-V. Эта команда перезапускает виртуальную машину
Node1:Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All }После перезапуска
Node1и установки роли Hyper-V установите средства управления Hyper-V:Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Install-WindowsFeature -Name Hyper-V -IncludeManagementTools}После того как виртуальная хост-машина будет готова, необходимо зарегистрировать её и назначить разрешения в Azure в качестве ресурса Arc.
После регистрации компьютера в Azure в качестве ресурса Arc и всех обязательных расширений выберите один из следующих методов для развертывания Azure Local из Azure.
Повторите предыдущий процесс для дополнительных узлов, если планируется протестировать развертывания с несколькими узлами. Убедитесь, что имена виртуальных узлов и IP-адреса управления уникальны и находятся в одной подсети: