Azure Cloud Shell: Installazione ed Utilizzo

Da aprile 2017, all’interno del portale di Microsoft Azure, è stata introdotta una nuova feature chiamata Azure Cloud Shell, che consiste proprio una console a riga da comando da poter utilizzare all’interno del portale web.

 

L’obiettivo di Microsoft è cercare di uniformare i linguaggi di gestione e quindi se da una parte abbiamo PowerShell che continua indisturbato la sua strada, dall’altra abbiamo Azure CLI, un set di comandi universali validi per Windows, Linux e macOS. Proprio Azure CLI è il motore, almeno per ora, di Azure Shell.

 

Perché dovrebbe servire una shell via web? Il motivo è molto semplice ed allo stesso tempo geniale: i comandi usati sono validi per tutti i sistemi operativi e sono memorizzabili all’interno di uno Storage Account e quindi anche senza il proprio dispositivo, sarebbe possibile eseguire operazioni all’interno di Azure (soprattutto quelle più complesse).

 

Configurazione Iniziale Shell

Di default la Shell non è attiva e per farlo è necessario cliccare sull’icona posta in alto a destra (che un po’ richiama l’icona di PowerShell) – figura 1.

 

Figura 1 – Attivazione Azure Shell

 

Se è la prima volta che viene eseguita l’operazione, sarà necessario configurare uno Storage Account, figura 2, che sarà usato dalla shell per memorizzare gli script ma anche per creare il profilo utente (l’ambiente gira su Linux). Il consiglio è quello di creare un oggetto nuovo e separato dal resto, anche perché così può essere eliminato senza problemi.

 

Figura 2 – Creazione Storage Account

 

Al termine della procedura, che dura in media qualche minuto, potrete iniziare a lavorare all’interno della Shell – figura 3 – ricordando che potrete lavorare all’interno degli oggetti che fanno parte della subscription in cui è stato creato lo storage account (questa cosa è importante se avete più sottoscrizioni nel vostro tenant); nel caso voleste cambiare sottoscrizione, potete usare il comando az account set –subscription “IDSubscription”

 

Figura 3 – Shell Pronta

 

Non ci resta che provare a creare una macchina virtuale, tramite il comando: az vm create –resource-group RSG04WE-Docker –name it00sldocker01 –image UbuntuLTS –generate-ssh-keys

 

Al termine dell’operazione, riceveremo un output con le informazioni più importanti – figura 4 – e noi potremo provare a verificare nel portale se la VM è realmente operativa, come mostra la figura 5.

 

Figura 4 – Output Nuova VM

 

Figura 5 – VM Creata

 

Clouddrive

Come detto in precedenza, durante la creazione della Shell viene creato uno Storage Account che possiamo utilizzare come repository remoto per posizionare i nostri script, utili per eseguire task di vario genere anche senza avere il nostro device a porta di mano.

 

Posizionatevi all’interno della sezione Files dello Storage Account e create una cartella (script nel mio caso) all’interno della cartella impostata inizialmente (cloudshell nel mio caso); create un file con estensione .sh, andando a copiare lo script usato in precedenza per creare la macchina virtuale….non dimenticando di cambiare il nome della VM. Dopo aver eseguito l’upload all’interno della cartella script, potrete navigare all’interno di essa dalla shell e potrete eseguire lo script tramite il comando sh ./NewVM.sh – come mostra la figura 6.

 

Figura 6 – Script VM

 

Nel caso non lo sapete, ricordate che la Share può essere mappata sul vostro computer, Windows o Linux, e questo significa avere un repository centralizzato tra i vostri colleghi, dove salvare gli script più importanti.

 

Mobile App

Con la nuova app di Microsoft Azure per iOS ed Android, è possibile eseguire la Shell anche da dispositivi mobili e questo, per quanto molto audace, offre la possibilità di eseguire script anche in casi di emergenza estrema.

 

Figura 7 – Cloud Shell su iOS

 

Conclusioni

Azure Shell è sicuramente uno strumento molto potente che ha un margine di crescita notevole. Da non dimenticare che prossimamente sarà introdotto il supporto a PowerShell, con la possibilità di usare script avanzati e modulari in modo centralizzato.