Esercitazione: Creare un lab basato su vm per Azure Stack HCI

Si applica a: Azure Stack HCI, versione 21H2

In questa esercitazione si usano script di PowerShell MSLab per automatizzare il processo di creazione di una foresta privata per eseguire Azure Stack HCI in macchine virtuali usando la virtualizzazione annidata.

Importante

Poiché Azure Stack HCI è destinato a un host di virtualizzazione in cui si eseguono tutti i carichi di lavoro nelle macchine virtuali, la virtualizzazione annidata non è supportata negli ambienti di produzione. Usare la virtualizzazione annidata solo a scopo di test e valutazione.

Si apprenderà come:

  • Creare una foresta privata con un controller di dominio e un server Windows Admin Center
  • Distribuire più macchine virtuali che eseguono Azure Stack HCI per il clustering

Al termine, sarà possibile creare un cluster Azure Stack HCI usando le macchine virtuali distribuite e usare il lab privato per la creazione di prototipi, test, risoluzione dei problemi o valutazione.

Prerequisiti

Per completare questa esercitazione, sono necessari:

  • Amministrazione privilegi in un server host Hyper-V che esegue Windows Server 2022, Windows Server 2019 o Windows Server 2016
  • Almeno 8 GB di RAM
  • CPU con supporto per la virtualizzazione annidata
  • Unità ssd (SSD)
  • 40 GB di spazio disponibile nel server host Hyper-V
  • Un account Azure per registrare Windows Admin Center e il cluster

Preparare il lab

Preparare attentamente l'ambiente lab seguendo queste istruzioni.

Connettersi all'host di virtualizzazione

Connettersi al server fisico in cui verrà creato il lab basato su vm. Se si usa un server remoto, connettersi tramite Desktop remoto.

Scaricare Azure Stack HCI

È possibile scaricare il sistema operativo Azure Stack HCI dal portale di Azure. Per istruzioni di download, vedere Scaricare il sistema operativo Azure Stack HCI.

Scaricare Windows Server

È necessaria anche una copia di Windows Server 2022, Windows Server 2019 o Windows Server 2016 per il controller di dominio e le macchine virtuali Windows Admin Center. È possibile usare i supporti di valutazione oppure, se si ha accesso a una sottoscrizione di VL o Visual Studio, è possibile usarli. Per questa esercitazione verrà scaricata una copia di valutazione.

Creare una cartella per i file lab

Creare una cartella Lab nella radice dell'unità C (o ovunque si preferisca) e usare Esplora file per copiare i file del sistema operativo scaricati nella cartella C:\Lab\Isos.

Scaricare script MSLab

Usando il Web browser nel server, scaricare gli script MSLab. Il file ZIP wslab_vxx.xx.x.zip dovrebbe essere scaricato automaticamente nel disco rigido. Copiare il file ZIP nel percorso del disco rigido (C:\Lab) ed estrarre gli script.

Modificare lo script LabConfig

Le macchine virtuali MSLab sono definite nello script di PowerShell LabConfig.ps1 come tabella hash semplice. Sarà necessario personalizzare lo script per creare una foresta privata con macchine virtuali Azure Stack HCI.

Per modificare lo script, usare Esplora file per passare a C:\Lab\wslab_xxx\ e quindi fare clic con il pulsante destro del mouse su LabConfig.ps1. Selezionare Modifica per aprire il file usando Windows PowerShell ISE.

Suggerimento

Salvare la versione originale di LabConfig.ps1 come Original_LabConfig.ps1, quindi è facile ricominciare se necessario.

Si noti che la maggior parte dello script è impostata come commento; sarà necessario eseguire solo alcune righe. Seguire questa procedura per personalizzare lo script in modo da produrre l'output desiderato. In alternativa, è possibile copiare semplicemente il blocco di codice alla fine di questa sezione e sostituire le righe appropriate in LabConfig.

Per personalizzare lo script:

  1. Aggiungere quanto segue alla prima riga non commentata di LabConfig.ps1 per indicare allo script dove trovare gli ISO, abilitare l'interfaccia del servizio guest e abilitare l'inoltro DNS nell'host: ServerISOFolder="C:\lab\isos" ; EnableGuestServiceInterface=$true ; UseHostDnsAsForwarder=$true

  2. Modificare il nome e la password dell'amministratore, se necessario.

  3. Se si prevede di creare più lab nello stesso server, modificare Prefisso = 'MSLab-' per usare un nuovo nome di prefisso, ad esempio Lab1-. Per questa esercitazione verrà associato il prefisso MSLab- predefinito.

  4. Impostare come commento la riga ForEach-Object predefinita per Windows Server e rimuovere l'hashtag prima della riga ForEach-Object per Azure Stack HCI in modo che lo script crei macchine virtuali Azure Stack HCI invece di macchine virtuali Windows Server per i nodi del cluster.

  5. Per impostazione predefinita, lo script crea un cluster a quattro nodi. Se si vuole modificare il numero di macchine virtuali nel cluster, sostituire 1..4 con 1..2 o 1..8, ad esempio. Tenere presente che più macchine virtuali nel cluster sono maggiori sono i requisiti di memoria nel server host.

  6. Aggiungere NestedVirt=$true ; AdditionalNetworks=$True al comando ForEach-Object e impostare MemoryStartupBytes su 4 GB.

  7. Aggiungere una riga AdditionalNetworksConfig: $LabConfig.AdditionalNetworksConfig += @{ NetName = 'Converged'; NetAddress='10.0.1.'; NetVLAN='0'; Subnet='255.255.255.0'}

  8. Aggiungere la riga seguente per configurare un server di gestione Windows Admin Center che esegue il sistema operativo Windows Server Core per aggiungere una seconda scheda di interfaccia di rete in modo da poter connettersi a Windows Admin Center dall'esterno della rete privata: $LabConfig.VMs += @{ VMName = 'AdminCenter' ; ParentVHD = 'Win2019Core_G2.vhdx'; MGMTNICs=2}

  9. Assicurarsi di salvare le modifiche apportate a LabConfig.ps1.

Le modifiche apportate ai LabConfig.ps1 apportate nei passaggi precedenti si riflettono in questo blocco di codice:

$LabConfig=@{ DomainAdminName='LabAdmin'; AdminPassword='LS1setup!'; Prefix = 'MSLab-' ; DCEdition='4'; Internet=$true ; AdditionalNetworksConfig=@(); VMs=@() ; ServerISOFolder="C:\lab\isos" ; EnableGuestServiceInterface=$true ; UseHostDnsAsForwarder=$true }
# Windows Server 2019
#1..4 | ForEach-Object {$VMNames="S2D"; $LABConfig.VMs += @{ VMName = "$VMNames$_" ; Configuration = 'S2D' ; ParentVHD = 'Win2019Core_G2.vhdx'; SSDNumber = 0; SSDSize=800GB ; HDDNumber = 12; HDDSize= 4TB ; MemoryStartupBytes= 512MB }}
# Or Azure Stack HCI 
1..4 | ForEach-Object {$VMNames="AzSHCI"; $LABConfig.VMs += @{ VMName = "$VMNames$_" ; Configuration = 'S2D' ; ParentVHD = 'AzSHCI21H2_G2.vhdx'; SSDNumber = 0; SSDSize=800GB ; HDDNumber = 12; HDDSize= 4TB ; MemoryStartupBytes= 4GB ; NestedVirt=$true ; AdditionalNetworks=$true }}
# Or Windows Server 2022
#1..4 | ForEach-Object {$VMNames="S2D"; $LABConfig.VMs += @{ VMName = "$VMNames$_" ; Configuration = 'S2D' ; ParentVHD = 'Win2022Core_G2.vhdx'; SSDNumber = 0; SSDSize=800GB ; HDDNumber = 12; HDDSize= 4TB ; MemoryStartupBytes= 512MB }}

$LabConfig.AdditionalNetworksConfig += @{ NetName = 'Converged'; NetAddress='10.0.1.'; NetVLAN='0'; Subnet='255.255.255.0'}

$LabConfig.VMs += @{ VMName = 'AdminCenter' ; ParentVHD = 'Win2019Core_G2.vhdx'; MGMTNICs=2}

Eseguire script MSLab e creare dischi padre

Gli script MSLab automatizzano gran parte del processo di installazione del lab e converte le immagini ISO dei sistemi operativi in file VHD.

Eseguire lo script Prereq

Passare a C:\Lab\wslab_xxx\ ed eseguire lo script 1_Prereq.ps1 facendo clic con il pulsante destro del mouse sul file e scegliendo Esegui con PowerShell. Lo script scaricherà i file necessari. Alcuni file di esempio verranno inseriti nella cartella ToolsDisk e alcuni script verranno aggiunti alla cartella ParentDisks . Al termine dello script, verrà chiesto di premere INVIO per continuare.

Nota

Potrebbe essere necessario modificare i criteri di esecuzione dello script nel sistema per consentire script non firmati eseguendo questo cmdlet di PowerShell come amministratore: Set-ExecutionPolicy -ExecutionPolicy Unrestricted

Creare i dischi padre di Windows Server

Lo script 2_CreateParentDisks.ps1 prepara dischi rigidi virtuali (VHD) per Windows Server e Server Core dal file ISO del sistema operativo e prepara anche un controller di dominio per la distribuzione con tutti i ruoli necessari configurati. Eseguire 2_CreateParentDisks.ps1 facendo clic con il pulsante destro del mouse sul file e scegliendo Esegui con PowerShell.

Verrà chiesto di selezionare i livelli di telemetria; scegliere B per Basic o F per Full. Lo script richiederà anche il file ISO per Windows Server 2019. Puntare al percorso in cui è stato copiato il file (C:\Labs\Isos). Se nella cartella sono presenti più file ISO, verrà chiesto di selezionare l'ISO che si vuole usare. Selezionare Windows Server ISO. Se viene richiesto di formattare un'unità, selezionare N.

Avviso

Non selezionare l'ISO di Azure Stack HCI : si creerà il disco padre (VHD) di Azure Stack HCI nella sezione successiva.

La creazione dei dischi padre può richiedere fino a 1-2 ore, anche se può richiedere molto meno tempo. Al termine, lo script chiederà se i file non necessari devono essere rimossi. Se si seleziona Y, verranno rimossi i primi due script perché non sono più necessari. Premere INVIO per continuare.

Creare il disco padre di Azure Stack HCI

Scaricare la funzioneConvert-WindowsImage.ps1 nella cartella C:\Lab\wslab_xxx\ParentDisks come Convert-WindowsImage.ps1. Eseguire quindiCreateParentDisk.ps1 come amministratore. Scegliere l'ISO di Azure Stack HCI da C:\Labs\Isos e accettare il nome e le dimensioni predefiniti.

La creazione del disco padre richiederà un po' di tempo. Al termine dell'operazione, verrà richiesto di avviare le macchine virtuali. Non avviarle ancora: digitare N.

Distribuire le macchine virtuali

Eseguire Deploy.ps1 facendo clic con il pulsante destro del mouse e scegliendo Esegui con PowerShell. Il completamento dello script richiederà 10-15 minuti.

Installare gli aggiornamenti e il software del sistema operativo

Dopo aver distribuito le macchine virtuali, è necessario installare gli aggiornamenti della sicurezza e il software necessario per gestire il lab.

Aggiornare il controller di dominio e le macchine virtuali Windows Admin Center

Accedere all'host di virtualizzazione e avviare la console di gestione di Hyper-V. Il controller di dominio nella foresta privata deve essere già in esecuzione (MSLab-DC). Passare a Macchine virtuali, selezionare il controller di dominio e connettersi. Accedere con il nome utente e la password specificati oppure, se non sono stati modificati, usare le impostazioni predefinite: LabAdmin/LS1setup.

Installare gli aggiornamenti della sicurezza necessari e riavviare la macchina virtuale del controller di dominio, se necessario. Questa operazione potrebbe richiedere del tempo e potrebbe essere necessario riavviare la macchina virtuale più volte.

Nella console di gestione di Hyper-V avviare la macchina virtuale Windows Admin Center (MSLab-AdminCenter), che esegue Server Core. Connettersi, accedere e digitare sconfig. Selezionare scaricare e installare gli aggiornamenti della sicurezza e riavviare, se necessario. Questa operazione potrebbe richiedere del tempo e potrebbe essere necessario riavviare la macchina virtuale e digitare sconfig più volte.

Installare Microsoft Edge nel controller di dominio

È necessario un Web browser nella macchina virtuale del controller di dominio per usare Windows Admin Center nella foresta privata. È probabile che Internet Explorer venga bloccato per motivi di sicurezza, quindi usare Microsoft Edge. Se Edge non è già installato nella macchina virtuale del controller di dominio, è necessario installarlo.

Per installare Microsoft Edge, connettersi alla macchina virtuale del controller di dominio dalla console di gestione di Hyper-V e avviare una sessione di PowerShell come amministratore. Eseguire quindi il codice seguente per installare e avviare Microsoft Edge.

#Install Edge
Start-BitsTransfer -Source "https://aka.ms/edge-msi" -Destination "$env:USERPROFILE\Downloads\MicrosoftEdgeEnterpriseX64.msi"
#Start install
Start-Process -Wait -Filepath msiexec.exe -Argumentlist "/i $env:UserProfile\Downloads\MicrosoftEdgeEnterpriseX64.msi /q"
#Start Edge
start microsoft-edge:

Installare Windows Admin Center in modalità gateway

Usando Microsoft Edge nella macchina virtuale del controller di dominio, scaricare questo script nella macchina virtuale del controller di dominio e salvarlo con un'estensione di file .ps1.

Fare clic con il pulsante destro del mouse sul file, scegliere Modifica con PowerShell e modificare il valore di $GatewayServerName nella prima riga in modo che corrisponda al nome della macchina virtuale AdminCenter senza il prefisso , ad esempio AdminCenter. Salvare lo script ed eseguirlo facendo clic con il pulsante destro del mouse sul file e scegliendo Esegui con PowerShell.

Accedere a Windows Admin Center

A questo momento dovrebbe essere possibile accedere a Windows Admin Center da Edge nel controller di dominio:http://admincenter

Il browser potrebbe avvisare che si tratta di una connessione non sicura o non sicura, ma è ok procedere.

Aggiungere una scheda di rete accessibile esternamente (facoltativo)

Se il lab si trova in una rete privata, è possibile aggiungere una scheda di interfaccia di rete accessibile esternamente alla macchina virtuale AdminCenter in modo da potersi connettere e gestire il lab dall'esterno della foresta privata. A tale scopo, usare Windows Admin Center per connettersi all'host di virtualizzazione (non al controller di dominio) e passare a Macchine > virtuali MSLab-AdminCenter > Reti impostazioni>. Assicurarsi di avere un commutatore virtuale connesso alla rete appropriata. Cercare Switch Type = External (ad esempio MSLab-LabSwitch-External). Aggiungere/associare quindi una scheda di interfaccia di rete della macchina virtuale a questo commutatore virtuale esterno. Assicurarsi di selezionare la casella di controllo "Consenti al sistema operativo di gestione di condividere queste schede di rete".

Prendere nota degli indirizzi IP delle schede di rete nella macchina virtuale AdminCenter. Aggiungere :443 all'indirizzo IP della scheda di interfaccia di rete accessibile esternamente e dovrebbe essere possibile accedere a Windows Admin Center e creare e gestire il cluster da un Web browser esterno, ad esempio:https://10.217.XX.XXX:443

Installare gli aggiornamenti del sistema operativo nelle macchine virtuali Azure Stack HCI

Avviare le macchine virtuali di Azure Stack HCI usando la console di gestione di Hyper-V nell'host di virtualizzazione. Connettersi a ogni macchina virtuale e scaricare e installare gli aggiornamenti della sicurezza usando Sconfig in ognuno di essi. Potrebbe essere necessario riavviare più volte le macchine virtuali. È possibile ignorare questo passaggio se si preferisce installare gli aggiornamenti del sistema operativo in un secondo momento come parte della creazione guidata del cluster.

Abilitare il ruolo Hyper-V nelle macchine virtuali azure Stack HCI

Se le macchine virtuali del cluster eseguono Azure Stack HCI 20H2, è necessario eseguire uno script per abilitare il ruolo Hyper-V nelle macchine virtuali. Salvare questo script in C:\Lab nell'host di virtualizzazione come PreviewWorkaround.ps1.

Fare clic con il pulsante destro del mouse sul file PreviewWorkaround.ps1 e scegliere Modifica con PowerShell. Modificare le variabili $domainName, $domainAdmin e $nodeName se non corrispondono, ad esempio:

$domainName = "corp.contoso.com"
$domainAdmin = "$domainName\labadmin"
$nodeName = "MSLab-AzSHCI1","MSLab-AzSHCI2","MSLab-AzSHCI3","MSLab-AzSHCI4"

Salvare le modifiche, quindi aprire una sessione di PowerShell come amministratore ed eseguire lo script:

PS C:\Lab> ./PreviewWorkaround.ps1

L'esecuzione dello script richiederà del tempo, soprattutto se sono state create numerose macchine virtuali. Verrà visualizzato il messaggio "MSLab-AzSHCI1 MSLab-AzSHCI2 è ora online. Procedere con l'installazione di PowerShell per Hyper-V." Se lo script sembra bloccarsi dopo aver visualizzato il messaggio, premere INVIO per riattivarlo. Al termine, verrà visualizzato: "MSLab-AzSHCI1 MSLab-AzSHCI2 è ora online. Procedere con il passaggio successivo ..."

Aggiungere schede di rete aggiuntive (facoltativo)

A seconda di come si intende usare il cluster, è possibile aggiungere un paio di schede di rete a ogni macchina virtuale Azure Stack HCI per test più versatili. A tale scopo, connettersi al server host usando Windows Admin Center e passare a Macchine virtuali > MSLab-(node) > Impostazioni > Reti. Assicurarsi di selezionare Abilita spoofing indirizzo MAC avanzato>. Se questa impostazione non è abilitata, è possibile che si verifichino test di connettività non riusciti quando si tenta di creare un cluster.

Registrare Windows Admin Center con Azure

Connettersi a Windows Admin Center nella foresta privata usando l'URL esterno o l'uso di Edge nel controller di dominio e Registrare Windows Admin Center con Azure.

Pulire le risorse

Se si seleziona Y per pulire i file e le cartelle non necessari, la pulizia è già stata eseguita. Se si preferisce farlo manualmente, passare a C:\Labs ed eliminare eventuali file non necessari.

Passaggi successivi

A questo momento si è pronti per passare alla Creazione guidata cluster.