Distribuera ett virtuellt Azure Local- version 23H2-system
Gäller för: Azure Local, version 23H2
Viktigt!
Azure Stack HCI är nu en del av Azure Local. Namnbytet av produktdokumentation pågår. Textändringarna har slutförts och de visuella uppdateringarna kommer snart att slutföras. Läs mer.
Den här artikeln beskriver hur du distribuerar en virtualiserad Lokal Azure-instans som kör version 23H2 på ett värdsystem som kör Hyper-V på Windows Server 2022, Windows 11 eller senare operativsystem (OS).
Du behöver administratörsbehörighet för den virtuella Azure-distributionen lokalt och bör känna till den befintliga lokala Azure-lösningen. Distributionen kan ta cirka 2,5 timmar att slutföra.
Viktigt!
En virtuell distribution av Azure Local version 23H2 är endast avsedd för utbildning och demonstration. Microsoft Support stöder inte virtuella distributioner.
Förutsättningar
Här är maskinvara, nätverk och andra förutsättningar för den virtuella distributionen:
Krav för fysisk värd
Följande är minimikraven för att distribuera Azure Local version 23H2.
Innan du börjar bör du kontrollera att:
Du har åtkomst till ett fysiskt värdsystem som kör Hyper-V på Windows Server 2022, Windows 11 eller senare. Den här värden används för att etablera en virtuell lokal Azure-distribution.
Du har tillräckligt med kapacitet. Mer kapacitet krävs för att köra faktiska arbetsbelastningar som virtuella datorer eller containrar.
Den fysiska maskinvara som används för den virtuella distributionen uppfyller följande krav:
Komponent Lägsta Processor Intel VT-x eller AMD-V, med stöd för kapslad virtualisering. Mer information finns i Stöder min processor Intel-virtualiseringsteknik®?. Minne Den fysiska värden måste ha minst 32 GB RAM-minne för distributioner av en virtuell nod. Den virtuella värddatorn ska ha minst 24 GB RAM-minne.
Den fysiska värden måste ha minst 64 GB RAM-minne för två distributioner av virtuella noder. Varje virtuell värddator ska ha minst 24 GB RAM-minne.Värdnätverkskort Ett enda nätverkskort. Storage 1 TB solid state-enhet (SSD).
Krav för virtuell värd
Innan du börjar kontrollerar du att varje virtuellt värdsystem kan ägna följande resurser åt att etablera din virtualiserade lokala Azure-instans:
Komponent | Krav |
---|---|
Typ av virtuell dator (VM) | Säker start och betrodd plattformsmodul (TPM) aktiverad. |
vCPU:er | Fyra kärnor. |
Minne | Minst 24 GB. |
Nätverk | Minst två nätverkskort som är anslutna till det interna nätverket. MAC-förfalskning måste vara aktiverat. |
Startdisk | En disk för att installera Azure Stack HCI-operativsystemet från ISO. |
Hårddiskar för Lagringsutrymmen Direct | Sex dynamiska expanderande diskar. Maximal diskstorlek är 1 024 GB. |
Datadisk | Minst 127 GB. |
Tidssynkronisering i integrering | Inaktiverat. |
Kommentar
Det här är minimikraven för att distribuera Azure Local version 23H2. Öka kapaciteten som virtuella kärnor och minne när du kör faktiska arbetsbelastningar som virtuella datorer eller containrar.
Konfigurera den virtuella växeln
När du distribuerar Azure Local i en virtuell miljö kan du använda dina befintliga nätverk och använda IP-adresser från nätverket om de är tillgängliga. I så fall behöver du bara skapa en extern växel och ansluta alla virtuella nätverkskort till den virtuella växeln. Virtuella värdar kommer att ha anslutning till ditt fysiska nätverk utan någon extra konfiguration.
Men om det är ont om det fysiska nätverk där du planerar att distribuera den virtuella Azure-miljön på IP-adresser kan du skapa en intern virtuell växel med NAT aktiverat för att isolera de virtuella värdarna från ditt fysiska nätverk samtidigt som utgående anslutning hålls till Internet.
Följande visar stegen för de två alternativen:
Distribuera med extern virtuell växel
På den fysiska värddatorn kör du följande PowerShell-kommando för att skapa en extern virtuell växel:
New-VMSwitch -Name "external_switch_name" -SwitchType External -NetAdapterName "network_adapter_name" -AllowManagementOS $true
Distribuera med intern virtuell växel och NAT aktiverat
På den fysiska värddatorn kör du följande PowerShell-kommando för att skapa en intern virtuell växel. Användningen av den här växeln säkerställer att den lokala Azure-distributionen är isolerad.
New-VMSwitch -Name "internal_switch_name" -SwitchType Internal -NetAdapterName "network_adapter_name"
När den interna virtuella växeln har skapats skapas ett nytt nätverkskort på värden. Du måste tilldela en IP-adress till det här nätverkskortet för att bli standardgatewayen för dina virtuella värdar när den är ansluten till det här interna växelnätverket. Du måste också definiera NAT-nätverksundernätet där de virtuella värdarna är anslutna.
Följande exempelskript skapar ett NAT-nätverk HCINAT
med prefix 192.168.44.0/24
och definierar 192.168.44.1
IP-adressen som standardgateway för nätverket med hjälp av gränssnittet på värden:
#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
Skapa den virtuella värden
Skapa en virtuell dator som fungerar som virtuell värd med följande konfiguration. Du kan skapa den här virtuella datorn med antingen Hyper-V Manager eller PowerShell:
Hyper-V Manager. Mer information finns i Skapa en virtuell dator med Hyper-V Manager för att spegla ditt fysiska hanteringsnätverk.
PowerShell-cmdletar. Se till att justera de vm-konfigurationsparametrar som refereras i kraven för virtuell värd innan du kör PowerShell-cmdletarna.
Följ dessa steg för att skapa en virtuell dator med ett exempel med namnet Node1
med PowerShell-cmdletar:
Skapa den virtuella datorn:
New-VHD -Path "your_VHDX_path" -SizeBytes 127GB New-VM -Name Node1 -MemoryStartupBytes 20GB -VHDPath "your_VHDX_path" -Generation 2 -Path "VM_config_files_path"
Inaktivera dynamiskt minne:
Set-VMMemory -VMName "Node1" -DynamicMemoryEnabled $false
Inaktivera kontrollpunkter för virtuella datorer:
Set-VM -VMName "Node1" -CheckpointType Disabled
Ta bort standardnätverkskortet som skapades när den virtuella datorn skapades i föregående steg:
Get-VMNetworkAdapter -VMName "Node1" | Remove-VMNetworkAdapter
Lägg till nya nätverkskort till den virtuella datorn med hjälp av anpassade namn. Det här exemplet lägger till fyra nätverkskort, men du kan bara lägga till två om det behövs. Med fyra nätverkskort kan du testa två nätverks avsikter (
Mgmt_Compute
ochStorage
till exempel) med två nätverkskort vardera:Add-VmNetworkAdapter -VmName "Node1" -Name "NIC1" Add-VmNetworkAdapter -VmName "Node1" -Name "NIC2" Add-VmNetworkAdapter -VmName "Node1" -Name "NIC3" Add-VmNetworkAdapter -VmName "Node1" -Name "NIC4"
Koppla alla nätverkskort till den virtuella växeln. Ange namnet på den virtuella växel som du skapade, oavsett om det var externt utan NAT eller internt med NAT:
Get-VmNetworkAdapter -VmName "Node1" |Connect-VmNetworkAdapter -SwitchName "virtual_switch_name"
Aktivera MAC-förfalskning på alla nätverkskort på den virtuella datorn
Node1
. MAC-adressförfalskning är en teknik som gör att ett nätverkskort kan maskeras som ett annat genom att ändra mac-adressen (Media Access Control). Detta krävs i scenarier där du planerar att använda kapslad virtualisering:Get-VmNetworkAdapter -VmName "Node1" |Set-VmNetworkAdapter -MacAddressSpoofing On
Aktivera trunkport (endast för distributioner med flera noder) för alla nätverkskort på den virtuella datorn
Node1
. Det här skriptet konfigurerar nätverkskortet för en specifik virtuell dator så att det fungerar i trunkläge. Detta används vanligtvis i distributioner med flera noder där du vill tillåta att flera virtuella lokala nätverk (VLAN) kommunicerar via ett enda nätverkskort:Get-VmNetworkAdapter -VmName "Node1" |Set-VMNetworkAdapterVlan -Trunk -NativeVlanId 0 -AllowedVlanIdList 0-1000
Skapa ett nytt nyckelskydd och tilldela det till
Node1
. Detta görs vanligtvis i samband med att du konfigurerar en skyddad infrastrukturresurs i Hyper-V, en säkerhetsfunktion som skyddar virtuella datorer från obehörig åtkomst eller manipulering.När följande skript har körts
Node1
har ett nytt nyckelskydd tilldelats till det. Det här nyckelskyddet skyddar den virtuella datorns nycklar och skyddar den virtuella datorn mot obehörig åtkomst eller manipulering:$owner = Get-HgsGuardian UntrustedGuardian $kp = New-HgsKeyProtector -Owner $owner -AllowUntrustedRoot Set-VMKeyProtector -VMName "Node1" -KeyProtector $kp.RawData
Aktivera vTPM för
Node1
. Genom att aktivera vTPM på en virtuell dator kan du använda BitLocker och andra funktioner som kräver TPM på den virtuella datorn. När det här kommandot har körtsNode1
har en vTPM aktiverat, förutsatt att värddatorns maskinvara och den virtuella datorns konfiguration stöder den här funktionen.Enable-VmTpm -VMName "Node1"
Ändra virtuella processorer till
8
:Set-VmProcessor -VMName "Node1" -Count 8
Skapa extra enheter som ska användas som startdisk och hårddiskar för Lagringsutrymmen Direct. När dessa kommandon har körts skapas sex nya VHDX:ar i
C:\vms\Node1
katalogen enligt följande exempel:new-VHD -Path "C:\vms\Node1\s2d1.vhdx" -SizeBytes 1024GB new-VHD -Path "C:\vms\Node1\s2d2.vhdx" -SizeBytes 1024GB new-VHD -Path "C:\vms\Node1\s2d3.vhdx" -SizeBytes 1024GB new-VHD -Path "C:\vms\Node1\s2d4.vhdx" -SizeBytes 1024GB new-VHD -Path "C:\vms\Node1\s2d5.vhdx" -SizeBytes 1024GB new-VHD -Path "C:\vms\Node1\s2d6.vhdx" -SizeBytes 1024GB
Koppla enheter till de nyligen skapade VHDX:erna för den virtuella datorn. I dessa kommandon läggs sex virtuella hårddiskar som finns i
C:\vms\Node1
katalogen och namngess2d1.vhdx
vias2d6.vhdx
tillNode1
. VarjeAdd-VMHardDiskDrive
kommando lägger till en virtuell hårddisk till den virtuella datorn, så kommandot upprepas sex gånger med olika-Path
parametervärden.Efteråt har den
Node1
virtuella datorn sex virtuella hårddiskar kopplade till sig. Dessa VHDX används för att aktivera Lagringsutrymmen Direct på den virtuella datorn, vilket krävs för lokala Azure-distributioner:Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d1.vhdx" Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d2.vhdx" Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d3.vhdx" Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d4.vhdx" Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d5.vhdx" Add-VMHardDiskDrive -VMName "Node1" -Path "C:\vms\Node1\s2d6.vhdx"
Inaktivera tidssynkronisering:
Get-VMIntegrationService -VMName "Node1" |Where-Object {$_.name -like "T*"}|Disable-VMIntegrationService
Aktivera kapslad virtualisering:
Set-VMProcessor -VMName "Node1" -ExposeVirtualizationExtensions $true
Starta den virtuella datorn:
Start-VM "Node1"
Installera operativsystemet på de virtuella värddatorerna
Utför följande steg för att installera och konfigurera Azure Stack HCI-operativsystemet på de virtuella värddatorerna:
Ladda ned Azure Local 23H2-programvara och installera operativsystemet Azure Stack HCI.
Uppdatera lösenordet eftersom det här är den första virtuella datorns start. Kontrollera att lösenordet uppfyller azure-komplexitetskraven. Lösenordet är minst 12 tecken och innehåller 1 versaler, 1 gemener, 1 tal och 1 specialtecken.
När lösenordet har ändrats läses serverkonfigurationsverktyget (SConfig) in automatiskt. Välj alternativet
15
för att avsluta till kommandoraden och kör nästa steg därifrån.Starta SConfig genom att köra följande kommando:
SConfig
Information om hur du använder SConfig finns i Konfigurera med verktyget Serverkonfiguration (SConfig).
Ändra värdnamnet till
Node1
. Använd alternativet2
förComputer name
i SConfig för att göra detta.Ändringen av värdnamnet resulterar i en omstart. När du uppmanas att starta om anger
Yes
du och väntar tills omstarten har slutförts. SConfig startas igen automatiskt.Från den fysiska värden kör
Get-VMNetworkAdapter
du cmdletarna ochForEach-Object
för att konfigurera de fyra nätverkskortnamnen för den virtuella datornNode1
genom att mappa de tilldelade MAC-adresserna till motsvarande nätverkskort i gästoperativsystemet.- Cmdleten
Get-VMNetworkAdapter
används för att hämta nätverkskortobjektet för varje nätverkskort på den virtuella datorn, där parametern-VMName
anger namnet på den virtuella datorn och parametern-Name
anger namnet på nätverkskortet. EgenskapenMacAddress
för nätverkskortobjektet nås sedan för att hämta MAC-adressen:
Get-VMNetworkAdapter -VMName "Node1" -Name "NIC1"
MAC-adressen är en sträng med hexadecimala tal. Cmdleten
ForEach-Object
används för att formatera strängen genom att infoga bindestreck med specifika intervall.Insert
Mer specifikt används metoden för strängobjektet för att infoga ett bindestreck i strängens 2:a, 5:e, 8:e, 11:e och 14:e plats i strängen. Operatornjoin
används sedan för att sammanfoga den resulterande matrisen med strängar till en enda sträng med blanksteg mellan varje element.Kommandona upprepas för var och en av de fyra nätverkskorten på den virtuella datorn och den slutliga formaterade MAC-adressen för varje nätverkskort lagras i en separat variabel:
($Node1finalmacNIC1, $Node1finalmacNIC2, $Node1finalmacNIC3, $Node1finalmacNIC4).
- Följande skript matar ut den slutliga formaterade MAC-adressen för varje nätverkskort:
$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
- Cmdleten
Hämta autentiseringsuppgifterna för den virtuella datorns
Node1
lokala administratör och byt sedan namn påNode1
:$cred = get-credential
Byt namn på och mappa nätverkskorten på
Node1
. Namnbytet baseras på MAC-adresserna för de nätverkskort som tilldelats av Hyper-V när den virtuella datorn startas första gången. Dessa kommandon ska köras direkt från värden:Get-NetAdapter
Använd kommandot för att hämta de fysiska nätverkskorten på den virtuella datorn, filtrera dem baserat på deras MAC-adress och byt sedan namn på dem till matchande kort med hjälp av cmdletenRename-NetAdapter
.Detta upprepas för var och en av de fyra nätverkskorten på den virtuella datorn, med MAC-adressen och det nya namnet på varje nätverkskort som anges separat. Detta upprättar en mappning mellan namnet på nätverkskorten i Hyper-V Manager och namnet på nätverkskorten i det virtuella datoroperativsystemet:
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
Inaktivera DHCP (Dynamic Host Configuration Protocol) på de fyra nätverkskorten för den virtuella datorn
Node1
genom att köra följande kommandon.Kommentar
Gränssnitten hämtar inte AUTOMATISKT IP-adresser från en DHCP-server och behöver i stället ha IP-adresser manuellt tilldelade till dem:
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}
Ange hanterings-IP, gateway och DNS. När följande kommandon har körts konfigureras
Node1
NIC1
nätverksgränssnittet med angiven IP-adress, nätmask, standardgateway och DNS-serveradress. Kontrollera att hanterings-IP-adressen kan matcha Active Directory och har utgående anslutning till Internet: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"}
Aktivera Hyper-V-rollen. Det här kommandot startar om den virtuella datorn
Node1
:Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Hyper-V -All }
När
Node1
du har startat om och Hyper-V-rollen har installerats installerar du Hyper-V-hanteringsverktygen:Invoke-Command -VMName "Node1" -Credential $cred -ScriptBlock {Install-WindowsFeature -Name Hyper-V -IncludeManagementTools}
När den virtuella värddatorn är klar måste du registrera den och tilldela behörigheter i Azure som en Arc-resurs.
När datorn har registrerats i Azure som en Arc-resurs och alla obligatoriska tillägg har installerats väljer du någon av följande metoder för att distribuera Azure Local från Azure.
Upprepa processen ovan för extra noder om du planerar att testa distributioner med flera noder. Se till att virtuella värdnamn och hanterings-IP-adresser är unika och i samma undernät: