Een SDN-infrastructuur implementeren met SDN Express
Van toepassing op: Azure Stack HCI, versies 21H2 en 20H2; Windows Server 2022, Windows Server 2019, Windows Server 2016
In dit onderwerp implementeert u een end-to-end SDN-infrastructuur (Software Defined Network) met behulp van SDN Express PowerShell-scripts. De infrastructuur bevat een netwerkcontroller met hoge beschikbare (HA) en optioneel een software-Load Balancer (SLB) met hoge beschikbare gateway (GW). De scripts ondersteunen een gefaseerd implementeren, waar u kunt implementeren alleen de netwerkcontroller onderdeel voor het bereiken van een kernset van functionaliteit met minimale netwerkvereisten.
U kunt ook een SDN-infrastructuur implementeren met behulp van Windows-beheercentrum of met System Center Virtual Machine Manager (VMM). Zie Een cluster maken - Stap 5: SDN en Manage SDN resources in the VMM fabric (SDN-resources beheren in de VMM-fabric) voor meer informatie.
Belangrijk
U kunt Microsoft System Center Virtual Machine Manager 2019 niet gebruiken voor het beheren van clusters met Azure Stack HCI, versie 21H2 of Windows Server 2022.
Voordat u begint
Voordat u met een SDN-implementatie begint, moet u uw fysieke en hostnetwerkinfrastructuur plannen en configureren. Verwijs naar de volgende artikelen:
- Vereisten voor fysieke netwerken
- Vereisten voor hostnetwerk
- Een cluster maken met Windows-beheercentrum
- Een cluster maken met Windows PowerShell
- Een software-gedefinieerde netwerkinfrastructuur plannen
U hoeft niet alle SDN-onderdelen te implementeren. Zie de sectie Gefaseerd implementeren van Een software-gedefinieerde netwerkinfrastructuur plannen om te bepalen welke infrastructuuronderdelen u nodig hebt en voer de scripts vervolgens dienovereenkomstig uit.
Zorg ervoor dat op alle hostservers het Azure Stack HCI is geïnstalleerd. Zie Deploy the Azure Stack HCI operating system (Het besturingssysteem implementeren) over hoe u dit doet.
Vereisten
Aan de volgende vereisten moet worden voldaan voor een geslaagde SDN-implementatie:
- Op alle hostservers moet Hyper-V zijn ingeschakeld
- Alle hostservers moeten lid zijn van Active Directory
- Er moet een virtuele switch worden gemaakt
- Het fysieke netwerk moet worden geconfigureerd voor de subnetten en VLAN's die zijn gedefinieerd in het configuratiebestand
- Het SDN Express-script moet worden uitgevoerd vanaf een Windows Server 2016 of een latere computer
- Het VHDX-bestand dat is opgegeven in het configuratiebestand moet bereikbaar zijn vanaf de computer waarop het SDN Express-script wordt uitgevoerd
Het VHDX-bestand maken
SDN gebruikt een VHDX-bestand met het besturingssysteem Azure Stack HCI of Windows Server als bron voor het maken van de virtuele SDN-machines (VM's). De versie van het besturingssysteem in uw VHDX moet overeenkomen met de versie die wordt gebruikt door de Azure Stack HCI Hyper-V-hosts. Dit VHDX-bestand wordt gebruikt door alle SDN-infrastructuuronderdelen.
Als u het Azure Stack HCI-besturingssysteem hebt gedownload en geïnstalleerd vanuit een ISO, kunt u het VHDX-bestand maken met behulp van het hulpprogramma Convert-WindowsImage.
Hieronder ziet u een voorbeeld met behulp van Convert-WindowsImage :
Install-Module -Name Convert-WindowsImage
Import-Module Convert-WindowsImage
$wimpath = "E:\sources\install.wim"
$vhdpath = "D:\temp\AzureStackHCI.vhdx"
$edition=1
Convert-WindowsImage -SourcePath $wimpath -Edition $edition -VHDPath $vhdpath -SizeBytes 500GB -DiskLayout UEFI
Notitie
Dit script moet worden uitgevoerd vanaf een Windows clientcomputer. U moet dit waarschijnlijk uitvoeren als beheerder en om het uitvoeringsbeleid voor scripts te wijzigen met behulp van de Set-ExecutionPolicy opdracht .
De opslagplaats GitHub downloaden
De SDN Express-scriptbestanden zijn live in GitHub. De eerste stap bestaat uit het downloaden van de benodigde bestanden en mappen op uw implementatiecomputer.
Ga naar de Microsoft SDN GitHub opslagplaats.
Vouw in de opslagplaats de vervolgkeuzelijst Code uit en kies klonen of ZIP downloaden om de SDN-bestanden te downloaden naar de aangewezen implementatiecomputer.
Notitie
Op de aangewezen implementatiecomputer moet een Windows Server 2016 of hoger worden uitgevoerd.
Extraheerde het ZIP-bestand en kopieer
SDNExpressde map naar de map van uwC:\implementatiecomputer.
Het configuratiebestand bewerken
Het PowerShell-configuratiegegevensbestand bevat alle parameters en instellingen die nodig zijn voor het SDN Express-script als invoer voor de verschillende MultiNodeSampleConfig.psd1 parameters en configuratie-instellingen. Dit bestand bevat specifieke informatie over wat moet worden ingevuld, afhankelijk van of u alleen het netwerkcontrolleronderdeel of de software-load balancer en gatewayonderdelen implementeert. Zie het onderwerp Een software-gedefinieerde netwerkinfrastructuur plannen voor gedetailleerde informatie.
Navigeer naar C:\SDNExpress\scripts de map en open het bestand in uw favoriete MultiNodeSampleConfig.psd1 teksteditor. Wijzig specifieke parameterwaarden voor uw infrastructuur en implementatie:
Algemene instellingen en parameters
De instellingen en parameters worden in het algemeen door SDN gebruikt voor alle implementaties. Zie SDN-infrastructuur VM-rolvereistenvoor specifieke aanbevelingen.
- VHDPath: VHD-bestandspad dat wordt gebruikt door alle SDN-infrastructuur-VM's (NC, SLB, GW)
- VHDFile: VHD-bestandsnaam die wordt gebruikt door alle SDN-infrastructuur-VM's
- VMLocation: bestandspad naar SDN-infrastructuur-VM's
- JoinDomain: domein waaraan SDN-infrastructuur-VM's zijn samengevoegd
- SDNMacPoolStart- beginadres van MAC-pool voor clientworkload-VM's
- SDNMacPoolEnd- eindadres van MAC-pool voor clientworkload-VM's
- ManagementSubnet: beheernetwerksubnet dat door NC wordt gebruikt voor het beheren van Hyper-V-hosts, SLB en GW-onderdelen
- ManagementGateway: gatewayadres voor het beheernetwerk
- ManagementDNS: DNS-server voor het beheernetwerk
- ManagementVLANID: VLAN-id voor het beheernetwerk
- DomainJoinUsername - gebruikersnaam van beheerder
- LocalAdminDomainUser - gebruikersnaam van lokale beheerder
- RestName: dns-naam die wordt gebruikt door beheer-clients (zoals Windows Admin Center) om te communiceren met NC
- HyperVHosts: hostservers die moeten worden beheerd door de netwerkcontroller
- NCUsername - gebruikersnaam van netwerkcontrolleraccount
- ProductKey: productcode voor SDN-infrastructuur-VM's
- SwitchName: alleen vereist als er meer dan één virtuele switch bestaat op de Hyper-V-hosts
- VMMemory: geheugen (in GB) dat is toegewezen aan infrastructuur-VM's. De standaardwaarde is 4 GB
- VMProcessorCount: het aantal processors dat is toegewezen aan infrastructuur-VM's. De standaardwaarde is 8
- Lokatie: als deze niet is opgegeven, wordt de locatie van de implementatiecomputer gebruikt
- Tijdzone: indien niet opgegeven, wordt de lokale tijdzone van de implementatiecomputer gebruikt
Wachtwoorden kunnen eventueel worden opgenomen als ze versleuteld zijn opgeslagen als beveiligde tekenreeksen met tekstcode. Wachtwoorden worden alleen gebruikt als SDN Express-scripts worden uitgevoerd op dezelfde computer waarop wachtwoorden zijn versleuteld, anders wordt om deze wachtwoorden gevraagd:
- DomainJoinSecurePassword als domeinaccount
- LocalAdminSecurePassword voor een lokaal beheerdersaccount
- NCSecurePassword voor netwerkcontrolleraccount
Sectie Netwerkcontroller-VM
Er worden minimaal drie netwerkcontroller-VM's aanbevolen voor SDN.
De NCs = @() sectie wordt gebruikt voor de netwerkcontroller-VM's. Zorg ervoor dat het MAC-adres van elke nc-VM zich buiten het bereik van SDNMACPool de algemene instellingen.
- ComputerName- naam van nc-VM
- Hostnaam: hostnaam van de server waarop de NC-VM zich bevindt
- ManagementIP: beheernetwerk-IP-adres voor de nc-VM
- MACAddress: MAC-adres voor de NC-VM
Sectie Software Load Balancer-VM
Er worden minimaal twee software-Load Balancer VM's aanbevolen voor SDN.
De Muxes = @() sectie wordt gebruikt voor de SLB-VM's. Zorg ervoor dat de MACAddress parameters en van elke SLB-VM buiten het bereik liggen dat PAMACAddress wordt vermeld in de algemene SDNMACPool instellingen. Zorg ervoor dat u de parameter van buiten de PA-pool opgeeft die is opgegeven in het configuratiebestand, maar deel uitmaakt van het PAIPAddress PASubnet dat is opgegeven in het configuratiebestand.
Laat deze sectie leeg ( Muxes = @() ) als u het SLB-onderdeel niet implementeert:
- ComputerName - naam van SLB VM
- Hostnaam: hostnaam van de server waarop de SLB-VM zich bevindt
- ManagementIP : ip-adres van beheernetwerk voor de SLB-VM
- MACAddress - MAC-adres voor de SLB VM
- PAIPAddress: IP-adres van providernetwerk (PA) voor de SLB-VM
- PAMACAddress: IP-adres van providernetwerk (PA) voor de SLB-VM
Sectie Gateway-VM
Er worden minimaal drie gateway-VM's (twee actieve en één redundante) aanbevolen voor SDN.
De Gateways = @() sectie wordt gebruikt voor de gateway-VM's. Zorg ervoor dat de MACAddress parameter van elke gateway-VM buiten het bereik ligt SDNMACPool dat wordt vermeld in de algemene instellingen. De FrontEndMac en moeten binnen het bereik BackendMacSDNMACPool zijn. Zorg ervoor dat u de FrontEndMac parameters en aan het einde van het bereik op BackendMacSDNMACPool krijgt. Zorg ervoor dat de wordt FrontEndIp opgeslagen aan het einde van de PA-pool die is opgegeven in het configuratiebestand.
Laat deze sectie leeg ( Gateways = @() ) als u het gatewayonderdeel niet implementeert:
- ComputerName - naam van gateway-VM
- Hostnaam: hostnaam van de server waarop de gateway-VM zich bevindt
- ManagementIP: ip-adres van beheernetwerk voor de gateway-VM
- MACAddress: MAC-adres voor de gateway-VM
- FrontEndIp : front-end-IP-adres van providernetwerk voor de gateway-VM
- FrontEndMac: front-end MAC-adres van providernetwerk voor de gateway-VM
- BackEndMac: MAC-adres van providernetwerkback-end voor de gateway-VM
Aanvullende instellingen voor SLB en gateway
De volgende aanvullende parameters worden gebruikt door SLB- en gateway-VM's. Laat deze waarden leeg als u geen SLB- of gateway-VM's implementeert:
- SDNASN: autonomous system number (ASN) dat door SDN wordt gebruikt om te peeren met netwerkswitches
- RouterASN - AsN van gatewayrouter
- RouterIPAddress - IP-adres van gatewayrouter
- PrivateVIPSubnet: virtueel IP-adres (VIP) voor het privésubnet
- PublicVIPSubnet : virtueel IP-adres voor het openbare subnet
De volgende aanvullende parameters worden alleen gebruikt door gateway-VM's. Laat deze waarden leeg als u gateway-VM's niet implementeert:
- PoolName: poolnaam die wordt gebruikt door alle gateway-VM's
- GRESubnet: VIP-subnet voor GRE (als gre-verbindingen worden gebruikt)
- Capaciteit: capaciteit in Kbps voor elke gateway-VM in de pool
Instellingen voor tenant-overlaynetwerken
De volgende parameters worden gebruikt als u gevirtualiseerde overlaynetwerken voor tenants implementeert en beheert. Als u in plaats daarvan de netwerkcontroller gebruikt voor het beheren van traditionele VLAN-netwerken, kunnen deze waarden leeg worden gelaten.
- PASubnet: subnet voor het netwerk Provider Address (PA)
- PAVLANID : VLAN-id voor het PA-netwerk
- PAGateway: IP-adres voor de PA-netwerkgateway
- PAPoolStart: begin-IP-adres voor de PA-netwerkgroep
- PAPoolEnd: eind-IP-adres voor de PA-netwerkgroep
Het implementatiescript uitvoeren
Met het SDN Express-script wordt de opgegeven SDN-infrastructuur geïmplementeerd. Wanneer het script is voltooid, is uw SDN-infrastructuur gereed om te worden gebruikt voor implementaties van VM-workloads.
Bekijk het bestand voor informatie over het uitvoeren van het implementatiescript dat te
README.mdlaat wordt uitgevoerd.Voer de volgende opdracht uit vanaf een gebruikersaccount met beheerdersreferenties voor de clusterhostservers:
SDNExpress\scripts\SDNExpress.ps1 -ConfigurationDataFile MultiNodeSampleConfig.psd1 -VerboseNadat de NC-VM's zijn gemaakt, configureert u dynamische DNS-updates voor de clusternaam van de netwerkcontroller op de DNS-server. Zie Dynamische DNS-updates voor meer informatie.
Configuratievoorbeeldbestanden
De volgende configuratievoorbeeldbestanden voor het implementeren van SDN zijn beschikbaar in de Microsoft SDN GitHub opslagplaats:
Traditionele VLAN networks.psd1: implementeer netwerkcontroller voor het beheren van netwerkbeleid zoals microsegmentatie en Quality of Service op traditionele VLAN-netwerken.
Gevirtualiseerde netwerken.psd1: implementeer netwerkcontroller voor het beheren van virtuele netwerken en netwerkbeleid op virtuele netwerken.
Software Load Balancer.psd1: netwerkcontroller en software-Load Balancer implementeren voor taakverdeling op virtuele netwerken.
SDN Gateways.psd1: implementeer netwerkcontroller, software-Load Balancer en gateway voor connectiviteit met externe netwerken.
Volgende stappen
Uw VM's beheren. Zie VM's beheren voor meer informatie.