Azure IaaS: Configurare i Custom Script nelle Virtual Machine

Microsoft Azure

Che PowerShell sia una cosa importante per ogni IT Admin, ormai è una cosa assodata. La creazione di script non solo ci aiuta a ridurre i tempi di esecuzione di attività ripetitive o complesse, ma ci aiuta nell’automatizzazione.

 

Per quanto possa sembrare strano, anche nel Cloud c’è bisogno di velocizzare determinate operazioni: basti pensare all’attivazione di ruoli e features all’interno di una nuova Virtual Machine. Solitamente certe operazioni portano via diversi minuti che aumentano in modo esponenziale se le VM aumentano.

 

La soluzione al problema è anche qui PowerShell e questo articolo spiegherà come automatizzare determinate attività all’interno di una VM create in Microsoft Azure.

 

La prima attività è quella di creare una normale VM, tramite l’apposito wizard, ed arrivare alla schermata Virtual machine configuration. Selezionare il checkbox Custom Script, come mostrato nella figura 1. Lo script deve essere in formato .ps1 e può trovarsi sia all’interno del proprio computer che in un Azure Storage, cosa molto utile se si vuole creare un vero e proprio repository.

 

2014_09_02_CustomScript_01
Figura 1 – Custom Script Attivo

 

In questo esempio si userà un file .ps1 contenente il cmdlet per attivare il ruolo IIS: Install-WindowsFeature Web-Server -IncludeManagementTools -IncludeAllSubFeature

 

Dopo aver caricato lo script, avviare la creazione della macchina virtuale ed attendere il completamento; è anche possibile visualizzare lo stato di esecuzione, come mostra la figura 2.

 

2014_09_02_CustomScript_02
Figura 2 – Stato Task

 

A termine attività la vostra VM avrà installato il ruolo in modo automatico, come mostrato nella figura 3.

 

2014_09_02_CustomScript_03
Figura 3 – Operazione Completata

 

Q – Non viene eseguito nessuno script
A – Assicurarsi di non aver disattivato l’installazione del VM Agent

 

Q – Il VM Agent è attivo ma i ruoli/features non sono presenti
A – Certi ruoli possono richiedere il riavvio della VM e se non lo avete specificato nello script, dovrete farlo a mano tramite la console

 

Q – Il VM Agent è attivo, lo script è corretto ma viene eseguito
A – Prima di fare una cosa su Azure, assicuratevi di testarlo su una VM locale per verificare che sia tutto in regola!

 

Q – Compaiono errori strani all’interno del task status
A – A volte il servizio VM Agent può andare in errore, quindi è necessario riavviare la VM direttamente dalla console di Azure. Questo resetterà i problemi e dovrebbe permettere la corretta esecuzione delle attività.