Esercizio - Configurare un modulo DSC e uno stato desiderato
In questo esercizio si creerà un account di Automazione di Azure e verrà caricato PowerShell DSC. Si eseguirà quindi l'onboarding di una VM esistente in Automazione di Azure. Infine, si verificherà se nella macchina virtuale non è presente IIS. In questo caso, si eseguirà codice per installare e configurare IIS nella macchina virtuale.
Creazione di una macchina virtuale
Iniziare distribuendo una nuova VM da un'immagine di Windows Server 2022.
Nel riquadro di Azure Cloud Shell a destra eseguire i comandi seguenti per creare un nome utente e generare una password casuale:
USERNAME=azureuser PASSWORD=$(openssl rand -base64 32)
Eseguire il comando seguente in Cloud Shell per creare una VM:
az vm create \ --resource-group "<rgn>[Sandbox resource group name]</rgn>" \ --name myVM \ --image win2019datacenter \ --admin-username $USERNAME \ --admin-password $PASSWORD
La creazione della macchina virtuale e delle risorse di supporto richiede alcuni minuti. Se la VM viene creata correttamente, verrà visualizzato un output simile al seguente:
{ "fqdns": "", "id": "/subscriptions/<guid>/resourceGroups/myResourceGroup/providers/Microsoft.Compute/virtualMachines/myVM", "location": "eastus", "macAddress": "00-0D-3A-36-BA-28", "powerState": "virtual machine running", "privateIpAddress": "10.0.0.4", "publicIpAddress": "104.40.69.56", "resourceGroup": "myResourceGroup" }
Copiare l'elemento
publicIpAddress
da questo output e salvarlo. Più avanti nell'esercizio si userà questo indirizzo per accedere alla macchina virtuale.Eseguire il comando seguente in Cloud Shell per aprire la porta 80 della VM per il traffico Web:
az vm open-port \ --port 80 \ --resource-group "<rgn>[Sandbox resource group name]</rgn>" \ --name myVM
Nel Web browser passare all'indirizzo IP pubblico della macchina virtuale
http://[public-ip]
. Anche se la porta 80 è aperta, la connessione dovrebbe raggiungere il timeout conThis site can't be reached
. Questo errore si verifica perché IIS non viene distribuito nella macchina virtuale. Questo problema verrà risolto più avanti in questo esercizio.
Creare un account di Automazione di Azure
Accedere al portale di Azure con lo stesso account usato per attivare la sandbox.
Nel menu delle risorse del portale di Azure o nella pagina Home selezionare Crea una risorsa. Viene visualizzato il riquadro Crea una risorsa.
Nella casella di testo Cerca servizi e marketplace immettere Automazione e premere INVIO per visualizzare i risultati della ricerca.
Nei risultati della ricerca Automazione selezionare il servizio Automazione di Azure pubblicato da Microsoft.
Seleziona Crea. Verrà visualizzato il riquadro Crea un account di Automazione.
Immettere i seguenti valori per ogni impostazione.
Impostazione Valore Subscription Concierge Subscription Gruppo di risorse Selezionare il gruppo di risorse esistente nell'elenco a discesa Nome Immettere un nome per l'account di automazione. È consigliabile usare [iniziali]-account-automazione. Usare questo nome ogni volta che viene indicato [nome-account-automazione] in questo esercizio. Area Accettare la località predefinita Selezionare Rivedi e crea e quindi Crea. Attendere che la distribuzione dell'account di automazione sia completata.
Al termine della distribuzione, selezionare Vai alla risorsa. Viene visualizzato il riquadro Account di automazione per la risorsa.
Creare uno script di configurazione DSC
In Cloud Shell eseguire il comando seguente per avviare una sessione di PowerShell:
pwsh
Al prompt di PowerShell eseguire il comando seguente per aprire un nuovo file denominato MyDscConfiguration.ps1 nell'editor di codice:
code $HOME/MyDscConfiguration.ps1
Immettere il blocco di codice seguente nel file. Questo codice crea una configurazione per installare IIS, se non è già installato. Il codice esegue quindi lo script per compilare la configurazione.
Configuration MyDscConfiguration { Node "localhost" { WindowsFeature MyFeatureInstance { Ensure = 'Present' Name = 'Web-Server' } } }
Selezionare CTRL+S nella home directory per salvare il file e CTRL+Q per chiudere l'editor.
Nella sessione di PowerShell in Azure Cloud Shell immettere il codice seguente, sostituendo
[your-automation-account-name]
con il nome della risorsa dell'account di automazione, per caricare lo script DSC nell'account Automazione di Azure.Import-AzAutomationDscConfiguration ` -Published ` -ResourceGroupName <rgn>[Sandbox resource group name]</rgn> ` -SourcePath $HOME/MyDscConfiguration.ps1 ` -Force ` -AutomationAccountName [your-automation-account-name]
Il comando dovrebbe generare un output simile al seguente:
ResourceGroupName : <rgn>[Sandbox resource group name]</rgn> AutomationAccountName : [your-automation-account-name] Location : eastus State : Published Name : MyDscConfiguration Tags : {} CreationTime : 6/25/21 5:44:36 PM +00:00 LastModifiedTime : 6/25/21 5:44:36 PM +00:00 Description : Parameters : {} LogVerbose : False
Aggiungere i moduli obbligatori (facoltativo)
Dopo aver caricato lo script di configurazione DSC, importare tutti i moduli di PowerShell necessari per il processo DSC. Per la configurazione in uso non sono richiesti altri moduli, quindi è possibile ignorare questo passaggio. Se è necessario importare o aggiungere moduli nell'account di automazione, passare all'account di automazione nel portale di Azure. Da qui selezionare Moduli nell'intestazione Risorse condivise a sinistra, quindi selezionare Aggiungi un modulo.
Compilare lo script DSC
Nel portale di Azure, il riquadro Panoramica per l'account di Automazione di Azure dovrebbe essere ancora visualizzato.
Nel menu Account di automazione, in Gestione della configurazione selezionare Configurazione stato (DSC). Viene visualizzato il riquadro Configurazione stato (DSC) per l'account di automazione.
Selezionare la scheda Configurazioni. Verificare che sia visualizzata la configurazione MyDscConfiguration e quindi selezionarla. Viene visualizzato il riquadro della configurazione MyDscConfiguration.
Nella barra dei comandi selezionare Compila.
Nella finestra di dialogo Compila configurazione DSC selezionare Sì.
Controllare le notifiche (l'icona delle notifiche si trova nei controlli globali nell'intestazione della pagina). Attendere che il processo di compilazione mostri lo Stato Completato (l'operazione potrebbe richiedere diversi minuti).
Nota
Può essere necessario aggiornare la pagina per visualizzare la modifica dello stato. Per aggiornare, nel percorso di navigazione in alto a sinistra del portale di Azure selezionare l'account di automazione. Viene visualizzato il riquadro Configurazione stato (DSC). Dalla barra dei menu in alto selezionare Aggiorna. Selezionare quindi la configurazione MyDscConfiguration dall'elenco per tornare al riquadro MyDscConfiguration. Nella scheda Compilation jobs (Processi di compilazione), lo Stato dovrebbe ora essere visualizzato come Completato.
Al termine della compilazione, chiudere il riquadro MyDscConfiguration. Viene visualizzato il riquadro Configurazione stato (DSC).
Registrare la VM con l'account di Automazione di Azure
Nel riquadro Configurazione stato (DSC) per [nome-account-automazione] selezionare la scheda Nodi e nella barra dei comandi selezionare Aggiungi. Viene visualizzato il riquadro Macchine virtuali per l'account di Automazione.
Selezionare la macchina virtuale creata nella prima attività di questo esercizio, myVM. La propagazione della configurazione e della macchina virtuale nella rete può richiedere fino a 10 minuti. Se la macchina virtuale non è elencata, attendere qualche minuto e quindi selezionare Aggiorna nella barra dei comandi finché non viene visualizzata.
Nella barra dei comandi selezionare Connetti. Viene visualizzato il riquadro Registrazione.
Immettere i seguenti valori per ogni impostazione.
Impostazione Valore Nome della configurazione del nodo Nell'elenco a discesa selezionare MyDscConfiguration.localhost Frequenza di aggiornamento 30 Frequenza modalità di configurazione 15 Modalità di configurazione ApplyAndMonitor Consenti la sostituzione del modulo Selezionare la casella di controllo Riavvia il nodo se necessario Selezionare la casella di controllo Azione dopo il riavvio ContinueConfiguration Seleziona OK.
Attendere la connessione della macchina virtuale. Il processo potrebbe richiedere alcuni minuti. Dopo la connessione di myVM, nel percorso di navigazione del portale in alto a sinistra selezionare l'account di automazione per chiudere il riquadro Registrazione e Macchine virtuali. Viene visualizzato il riquadro Configurazione stato (DSC) per l'account di automazione.
Nella barra dei comandi selezionare Aggiorna.
Verificare che il nodo myVM sia presente nell'elenco e che lo stato sia Conforme.
Verificare che IIS sia installato nella VM
Nel Web browser passare a http://[public-ip]
, dove [public-ip]
è l'indirizzo IP pubblico registrato in precedenza in questo esercizio.
Viene visualizzata la pagina Web IIS predefinita.
Congratulazioni. IIS è stato distribuito correttamente. Automazione di Azure ha usato lo script di PowerShell DSC caricato nell'account di Automazione di Azure.