Guida introduttiva: creare una macchina virtuale Linux in Azure con PowerShell
Si applica a: ✔️ macchine virtuali Linux
Il modulo Azure PowerShell viene usato per creare e gestire le risorse di Azure dalla riga di comando di PowerShell o negli script. Questa guida introduttiva illustra come usare il modulo Azure PowerShell per distribuire una macchina virtuale (VM) Linux in Azure. Questa guida introduttiva usa l'immagine più recente del marketplace Debian. Per vedere in azione la macchina virtuale, viene stabilita anche una connessione SSH alla macchina virtuale e viene installato il server Web NGINX.
Se non si ha una sottoscrizione di Azure, creare un account gratuito prima di iniziare.
Avviare Azure Cloud Shell
Azure Cloud Shell è una shell interattiva gratuita che può essere usata per eseguire la procedura di questo articolo. Include strumenti comuni di Azure preinstallati e configurati per l'uso con l'account.
Per aprire Cloud Shell, basta selezionare Prova nell'angolo superiore destro di un blocco di codice. Selezionare Copia per copiare i blocchi di codice, incollarli in Cloud Shell e premere INVIO per eseguirli.
Creare un gruppo di risorse
Creare un gruppo di risorse di Azure con New-AzResourceGroup. Un gruppo di risorse è un contenitore logico in cui le risorse di Azure vengono distribuite e gestite:
New-AzResourceGroup -Name 'myResourceGroup' -Location 'EastUS'
Creare una macchina virtuale
Verrà generata automaticamente una coppia di chiavi SSH da usare per la connessione alla macchina virtuale. La chiave pubblica creata usando -GenerateSshKey
verrà archiviata in Azure come risorsa usando il nome specificato come SshKeyName
. La risorsa chiave SSH può essere riutilizzata per la creazione di macchine virtuali aggiuntive. Anche le chiavi pubbliche e private verranno scaricate automaticamente. Quando si crea la coppia di chiavi SSH con Cloud Shell, questa verrà archiviata in un account di archiviazione creato automaticamente da Cloud Shell. Non eliminare l'account di archiviazione o la condivisione file che contiene prima di aver recuperato le chiavi, altrimenti si perderà l'accesso alla macchina virtuale.
Verrà richiesto un nome utente che verrà usato quando ci si connette alla macchina virtuale. Verrà anche richiesta una password, che è possibile lasciare vuota. L'accesso tramite password per la macchina virtuale è disabilitato quando si usa una chiave SSH.
In questo esempio viene creata una macchina virtuale denominata myVM, in Stati Uniti orientaliusando le dimensioni della macchina virtuale Standard_B2s.
New-AzVm `
-ResourceGroupName 'myResourceGroup' `
-Name 'myVM' `
-Location 'East US' `
-image Debian11 `
-size Standard_B2s `
-PublicIpAddressName myPubIP `
-OpenPorts 80 `
-GenerateSshKey `
-SshKeyName mySSHKey
L'output consentirà di specificare il percorso della copia locale della chiave SSH. Ad esempio:
Private key is saved to /home/user/.ssh/1234567891
Public key is saved to /home/user/.ssh/1234567891.pub
Le informazioni sui costi non vengono presentate durante il processo di creazione della macchina virtuale per PowerShell come avviene per il portale di Azure. Per altre informazioni sul funzionamento dei costi per le macchine virtuali, vedere la pagina Panoramica dell'ottimizzazione dei costi.
La distribuzione della macchina virtuale richiederà alcuni minuti. Al termine della distribuzione, passare alla sezione successiva.
Installare NGINX
Per visualizzare la macchina virtuale in azione, installare il server Web NGINX.
Invoke-AzVMRunCommand `
-ResourceGroupName 'myResourceGroup' `
-Name 'myVM' `
-CommandId 'RunShellScript' `
-ScriptString 'sudo apt-get update && sudo apt-get install -y nginx'
Il parametro -ScriptString
richiede la versione 4.27.0
o versioni successive del modulo di Az.Compute
.
Visualizzare il server Web in azione
Ottenere l'indirizzo IP pubblico della macchina virtuale:
Get-AzPublicIpAddress -Name myPubIP -ResourceGroupName myResourceGroup | select "IpAddress"
Usare il Web browser che si preferisce per vedere la pagina iniziale di NGINX predefinita. Immettere l'indirizzo IP pubblico della macchina virtuale come indirizzo Web.
Pulire le risorse
Quando non sono più necessari, è possibile rimuovere il gruppo di risorse, la macchina virtuale e tutte le risorse correlate con il cmdlet Remove-AzResourceGroup:
Remove-AzResourceGroup -Name 'myResourceGroup'
Passaggi successivi
In questa guida introduttiva è stata distribuita una macchina virtuale semplice, sono stati creati un gruppo di sicurezza di rete e una regola ed è stato installato un server Web. Per altre informazioni sulle macchine virtuali di Azure, passare all'esercitazione per le VM di Linux.