Distribuire un'infrastruttura SDN che usa SDN Express
Si applica a: Azure Stack HCI, versioni 22H2 e 21H2; Windows Server 2022, Windows Server 2019, Windows Server 2016
In questo argomento si distribuisce un'infrastruttura SDN (Software Defined Network) end-to-end usando script di PowerShell SDN Express. L'infrastruttura include un controller di rete a disponibilità elevata (NC) e, facoltativamente, un servizio di bilanciamento del carico software a disponibilità elevata e un gateway a disponibilità elevata ( GW). Gli script supportano una distribuzione in più fasi, in cui è possibile distribuire solo il componente Controller di rete per ottenere un set di funzionalità di base con requisiti di rete minimi.
È anche possibile distribuire un'infrastruttura SDN usando Windows Amministrazione Center o System Center Virtual Machine Manager (VMM). Per altre informazioni, vedere Creare un cluster - Passaggio 5: SDN e vedere Gestire le risorse SDN nell'infrastruttura di VMM.
Importante
Non è possibile usare Microsoft System Center Virtual Machine Manager 2019 per gestire i cluster che eseguono Azure Stack HCI, versione 21H2 o Windows Server 2022.
Operazioni preliminari
Prima di iniziare una distribuzione SDN, pianificare e configurare l'infrastruttura di rete fisica e host. Fare riferimento agli articoli seguenti:
- Requisiti di rete fisica
- Requisiti di rete host
- Creare un cluster con Windows Amministrazione Center
- Creare un cluster con Windows PowerShell
- Pianificare un'infrastruttura Software Defined Network
Non è necessario distribuire tutti i componenti SDN. Vedere la sezione Distribuzione in più fasi di Pianificare un'infrastruttura di rete definita dal software per determinare quali componenti dell'infrastruttura sono necessari e quindi eseguire gli script di conseguenza.
Assicurarsi che tutti i server host abbiano installato il sistema operativo Azure Stack HCI. Per informazioni su come eseguire questa operazione, vedere Distribuire il sistema operativo Azure Stack HCI.
Requisiti
Per una distribuzione SDN corretta, è necessario soddisfare i requisiti seguenti:
- Tutti i server host devono avere Hyper-V abilitato.
- Tutti i server host devono essere aggiunti ad Active Directory.
- È necessario creare un commutatore virtuale.
- La rete fisica deve essere configurata per le subnet e le VLAN definite nel file di configurazione.
- Lo script SDN Express deve essere eseguito da un computer Windows Server 2016 o versione successiva.
- Il file VHDX specificato nel file di configurazione deve essere raggiungibile dal computer in cui viene eseguito lo script SDN Express.
Scaricare il file VHDX
SDN usa un file VHDX contenente azure Stack HCI o il sistema operativo Windows Server come origine per la creazione delle macchine virtuali SDN.
Nota
La versione del sistema operativo in VHDX deve corrispondere alla versione usata dagli host Hyper-V di Azure Stack HCI. Questo file VHDX viene usato da tutti i componenti dell'infrastruttura SDN.
Per scaricare una versione in lingua inglese del file VHDX, vedere Scaricare il sistema operativo Azure Stack HCI dal portale di Azure. Assicurarsi di selezionare VHDX in lingua inglese nell'elenco a discesa Scegli lingua .
Attualmente, un file VHDX non in lingua inglese non è disponibile per il download. Se è necessaria una versione non in lingua inglese, scaricare il file ISO corrispondente e convertirlo in VHDX usando il Convert-WindowsImage
cmdlet . È necessario eseguire questo script da un computer client Windows. Probabilmente sarà necessario eseguire questo script come Amministrazione istrator e modificare i criteri di esecuzione per gli script usando il Set-ExecutionPolicy
comando .
La sintassi seguente illustra un esempio di utilizzo Convert-WindowsImage
di :
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
Scaricare il repository GitHub
I file di script SDN Express risiedono in GitHub. Il primo passaggio consiste nel recuperare i file e le cartelle necessari nel computer di distribuzione.
Passare al repository GitHub SDN Microsoft.
Nel repository espandere l'elenco a discesa Codice e quindi scegliere Clona o Scarica ZIP per scaricare i file SDN nel computer di distribuzione designato.
Nota
Il computer di distribuzione designato deve eseguire Windows Server 2016 o versione successiva.
Estrarre il file ZIP e copiare la
SDNExpress
cartella nella cartella del computer diC:\
distribuzione.
Modificare il file di configurazione
Il file di dati di configurazione di PowerShell MultiNodeSampleConfig.psd1
contiene tutti i parametri e le impostazioni necessari per lo script SDN Express come input per i vari parametri e impostazioni di configurazione. Questo file contiene informazioni specifiche su ciò che deve essere compilato in base al fatto che si distribuisca solo il componente controller di rete o anche il servizio di bilanciamento del carico software e i componenti del gateway. Per informazioni dettagliate, vedere Pianificare un'infrastruttura di rete software-defined.
Passare alla C:\SDNExpress\scripts
cartella e aprire il file nell'editor MultiNodeSampleConfig.psd1
di testo preferito. Modificare i valori dei parametri specifici in base all'infrastruttura e alla distribuzione:
Impostazioni e parametri generali
Le impostazioni e i parametri vengono usati da SDN in generale per tutte le distribuzioni. Per raccomandazioni specifiche, vedere Requisiti del ruolo della macchina virtuale dell'infrastruttura SDN.
- VHDPath : percorso del file VHD usato da tutte le macchine virtuali dell'infrastruttura SDN (NC, SLB, GW)
- VHDFile - Nome file VHDX usato da tutte le macchine virtuali dell'infrastruttura SDN
- VMLocation : percorso del file per le macchine virtuali dell'infrastruttura SDN. Si noti che i percorsi UNC (Universal Naming Convention) non sono supportati. Per i percorsi basati sull'archiviazione del cluster, usare un formato come
C:\ClusterStorage\...
- JoinDomain : dominio a cui vengono aggiunte le macchine virtuali dell'infrastruttura SDN
- SDNMacPoolStart : inizio dell'indirizzo del pool MAC per le macchine virtuali del carico di lavoro client
- SDNMacPoolEnd - Indirizzo del pool MAC finale per le macchine virtuali del carico di lavoro client
- ManagementSubnet: subnet di rete di gestione usata dal controller di rete per gestire host Hyper-V, SLB e componenti GW
- ManagementGateway - Indirizzo del gateway per la rete di gestione
- ManagementDNS - Server DNS per la rete di gestione
- ManagementVLANID - ID VLAN per la rete di gestione
- DomainJoinUsername : nome utente amministratore. Si noti che il nome utente deve essere nel formato seguente:
domainname\username
. Ad esempio, se il dominio ècontoso.com
, immettere il nome utente comecontoso\<username>
. Non usare formati comecontoso.com\<username>
ousername@contoso.com
- Local Amministrazione DomainUser : nome utente amministratore locale. Si noti che il nome utente deve essere nel formato seguente:
domainname\username
. Ad esempio, se il dominio ècontoso.com
, immettere il nome utente comecontoso\<username>
. Non usare formati comecontoso.com\<username>
ousername@contoso.com
- RestName - Nome DNS usato dai client di gestione (ad esempio Windows Amministrazione Center) per comunicare con NC
- RestIpAddress : indirizzo IP statico per l'API REST, allocato dalla rete di gestione. Può essere usato per la risoluzione DNS o le distribuzioni basate su IP REST
- HyperVHosts : server host da gestire dal controller di rete
- NCUsername - Nome utente dell'account del controller di rete
- ProductKey - Codice Product Key per le macchine virtuali dell'infrastruttura SDN
- SwitchName : obbligatorio solo se sono presenti più commutatori virtuali negli host Hyper-V
- VMMemory : memoria (in GB) assegnata alle macchine virtuali dell'infrastruttura. Il valore predefinito è 4 GB
- VMProcessorCount : numero di processori assegnati alle macchine virtuali dell'infrastruttura. Il valore predefinito è 8
- Impostazioni locali : se non specificato, vengono usate le impostazioni locali del computer di distribuzione
- Fuso orario : se non specificato, viene usato il fuso orario locale del computer di distribuzione
Le password possono essere facoltativamente incluse se archiviate crittografate come stringhe protette con codifica testo. Le password verranno usate solo se gli script SDN Express vengono eseguiti nello stesso computer in cui sono state crittografate le password, altrimenti richiederà queste password:
- DomainJoinSecurePassword : per l'account di dominio
- Local Amministrazione SecurePassword : per l'account amministratore locale
- NCSecurePassword : per l'account del controller di rete
Sezione Vm controller di rete
Per SDN sono consigliate almeno tre macchine virtuali del controller di rete.
La NCs = @()
sezione viene usata per le macchine virtuali del controller di rete. Assicurarsi che l'indirizzo MAC di ogni macchina virtuale del controller di rete non sia compreso nell'intervallo SDNMACPool
elencato nelle impostazioni Generali.
- ComputerName : nome della macchina virtuale nc
- HostName : nome host del server in cui si trova la macchina virtuale del controller di rete
- ManagementIP : indirizzo IP di rete di gestione per la macchina virtuale nc
- MACAddress - Indirizzo MAC per la macchina virtuale NC
Sezione Macchina virtuale del servizio di bilanciamento del carico software
Per SDN sono consigliate almeno due macchine virtuali del servizio di bilanciamento del carico software.
La Muxes = @()
sezione viene usata per le macchine virtuali SLB. Assicurarsi che i MACAddress
parametri e PAMACAddress
di ogni macchina virtuale SLB non siano compresi nell'intervallo SDNMACPool
elencato nelle impostazioni Generali. Assicurarsi di ottenere il PAIPAddress
parametro dall'esterno del pool PA specificato nel file di configurazione, ma parte di PASubnet specificata nel file di configurazione.
Lasciare vuota questa sezione (Muxes = @()
) se non si distribuisce il componente SLB:
- ComputerName : nome della macchina virtuale SLB
- HostName : nome host del server in cui si trova la macchina virtuale SLB
- ManagementIP - Indirizzo IP di rete di gestione per la macchina virtuale SLB
- MACAddress - Indirizzo MAC per la macchina virtuale SLB
- PAIPAddress - Indirizzo IP di rete del provider (PA) per la macchina virtuale SLB
- PAMACAddress - Indirizzo IP di rete del provider (PA) per la macchina virtuale SLB
Sezione Macchina virtuale gateway
Per SDN sono consigliate almeno due macchine virtuali gateway (una attiva e una ridondante).
La Gateways = @()
sezione viene usata per le macchine virtuali del gateway. Assicurarsi che il MACAddress
parametro di ogni macchina virtuale gateway non sia compreso nell'intervallo SDNMACPool
elencato nelle impostazioni Generali. e FrontEndMac
BackendMac
deve essere compreso nell'intervallo SDNMACPool
. Assicurarsi di ottenere i FrontEndMac
parametri e BackendMac
dalla fine dell'intervallo SDNMACPool
.
Lasciare vuota questa sezione (Gateways = @()
) se non si distribuisce il componente Gateway:
- ComputerName : nome della macchina virtuale del gateway
- HostName : nome host del server in cui si trova la macchina virtuale del gateway
- ManagementIP : indirizzo IP di rete di gestione per la macchina virtuale del gateway
- MACAddress - Indirizzo MAC per la macchina virtuale del gateway
- FrontEndMac - Indirizzo MAC del front-end di rete del provider per la macchina virtuale del gateway
- BackEndMac - Indirizzo MAC del back-end di rete del provider per la macchina virtuale del gateway
Impostazioni aggiuntive per SLB e gateway
I parametri aggiuntivi seguenti vengono usati dalle macchine virtuali SLB e gateway. Lasciare vuoti questi valori se non si distribuiscono macchine virtuali SLB o Gateway:
- SDNASN - Numero di sistema autonomo (ASN) usato da SDN per eseguire il peering con commutatori di rete
- RouterASN - ASN router gateway
- RouterIPAddress - Indirizzo IP del router del gateway
- PrivateVIPSubnet : indirizzo IP virtuale (VIP) per la subnet privata
- PublicVIPSubnet : indirizzo IP virtuale per la subnet pubblica
I parametri aggiuntivi seguenti vengono usati solo dalle macchine virtuali gateway. Lasciare vuoti questi valori se non si distribuiscono macchine virtuali gateway:
PoolName : nome del pool usato da tutte le macchine virtuali del gateway
GRESubnet : subnet VIP per GRE (se si usano connessioni GRE)
Capacità : capacità in Kbps per ogni macchina virtuale del gateway nel pool
RedundantCount : numero di gateway in modalità ridondante. Il valore predefinito è 1. I gateway ridondanti non hanno connessioni attive. Quando un gateway attivo diventa inattivo, le connessioni da tale gateway passano al gateway ridondante e il gateway ridondante diventa attivo.
Nota
Se si compila un valore per RedundantCount, assicurarsi che il numero totale di macchine virtuali del gateway sia almeno uno superiore a RidondanteCount. Per impostazione predefinita, Il valore di RedundantCount è 1, pertanto è necessario disporre di almeno 2 macchine virtuali gateway per assicurarsi che siano presenti almeno 1 gateway attivo per ospitare le connessioni gateway.
Impostazioni per le reti di sovrapposizione tenant
I parametri seguenti vengono usati se si distribuisce e si gestiscono reti virtualizzate sovrapposte per i tenant. Se invece si usa Controller di rete per gestire le reti VLAN tradizionali, questi valori possono essere lasciati vuoti.
- PASubnet : subnet per la rete PA (Provider Address)
- PAVLANID - ID VLAN per la rete PA
- PAGateway - Indirizzo IP per il gateway di rete PA
- PAPoolStart : indirizzo IP iniziale per il pool di rete PA
- PAPoolEnd - Indirizzo IP finale per il pool di rete PA
Ecco come la rete logica del provider HNV (Hyper-V Network Virtualization) alloca gli indirizzi IP. Usare questa opzione per pianificare lo spazio indirizzi per la rete del provider HNV.
- Alloca due indirizzi IP a ogni server fisico
- Alloca un indirizzo IP a ogni macchina virtuale MUX SLB
- Alloca un indirizzo IP a ogni macchina virtuale del gateway
Eseguire lo script di distribuzione
Lo script SDN Express distribuisce l'infrastruttura SDN specificata. Al termine dello script, l'infrastruttura SDN è pronta per essere usata per le distribuzioni dei carichi di lavoro delle macchine virtuali.
Esaminare il
README.md
file per informazioni sull'interruzione tardiva su come eseguire lo script di distribuzione.Eseguire il comando seguente da un account utente con credenziali amministrative per i server host del cluster:
SDNExpress\scripts\SDNExpress.ps1 -ConfigurationDataFile MultiNodeSampleConfig.psd1 -Verbose
Dopo aver creato le macchine virtuali NC, configurare gli aggiornamenti DNS dinamici per il nome del cluster controller di rete nel server DNS. Per altre informazioni, vedere Aggiornamenti DNS dinamici.
File di esempio di configurazione
I file di esempio di configurazione seguenti per la distribuzione di SDN sono disponibili nel repository GitHub SDN Microsoft:
Reti VLAN tradizionali.psd1 : distribuire controller di rete per la gestione di criteri di rete come microsegmentazione e qualità del servizio nelle reti VLAN tradizionali.
Virtualized networks.psd1 - Distribuire controller di rete per la gestione di reti virtuali e criteri di rete nelle reti virtuali.
Software Load Balancer.psd1 - Distribuire controller di rete e bilanciamento del carico software per il bilanciamento del carico nelle reti virtuali.
Gateway SDN.psd1 : distribuire controller di rete, bilanciamento del carico software e gateway per la connettività alle reti esterne.
Ridistribuire il controller di rete SDN
Se la distribuzione del controller di rete non riesce o si vuole di nuovo distribuirla, eseguire le operazioni seguenti:
Eliminare tutte le macchine virtuali del controller di rete e i relativi dischi rigidi virtuali da tutti i nodi del server.
Rimuovere le chiavi del Registro di sistema seguenti da tutti gli host eseguendo questo comando:
Remove-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Services\NcHostAgent\Parameters\' -Name Connections Remove-ItemProperty -path 'HKLM:\SYSTEM\CurrentControlSet\Services\NcHostAgent\Parameters\' -Name NetworkControllerNodeNames
Dopo aver rimosso la chiave del Registro di sistema, rimuovere il cluster dalla gestione di Windows Amministrazione Center e quindi aggiungerlo nuovamente.
Nota
Se non si esegue questo passaggio, potrebbe non essere visualizzata la distribuzione guidata SDN in Windows Amministrazione Center.
(Passaggio aggiuntivo solo se si prevede di disinstallare il controller di rete e non distribuirlo di nuovo) Eseguire il cmdlet seguente in tutti i server del cluster Azure Stack HCI e quindi ignorare l'ultimo passaggio.
Disable-VMSwitchExtension -VMSwitchName "<Compute vmswitch name>" -Name "Microsoft Azure VFP Switch Extension"
Eseguire di nuovo la distribuzione guidata.