Scegliere lo strumento da riga di comando di Azure appropriato

Quando si tratta di gestire Azure, sono disponibili molte opzioni. Questo articolo confronta l'interfaccia della riga di comando di Azure e il linguaggio di Azure PowerShell e fornisce un confronto tra gli ambienti della shell in cui vengono eseguiti.

L'interfaccia della riga di comando di Azure, Azure PowerShell e Azure Cloud Shell hanno funzionalità sovrapposte. Ognuno opera in modo diverso e la lingua è talvolta confusa con l'ambiente. Usare questa guida per determinare quale è lo strumento più adatto per l'utente.

Qual è il vantaggio dell'uso di uno strumento da riga di comando di Azure?

Azure viene eseguito in automazione. Ogni azione eseguita all'interno del portale si traduce in un punto qualsiasi del codice eseguito per leggere, creare, modificare o eliminare risorse.

Lo spostamento del carico di lavoro in Azure comporta il sollevamento di alcuni dei carichi di lavoro amministrativi, ma non tutti. Man mano che aumenta il tasso di adozione con Azure, si aumenta il sovraccarico. Anche se non è necessario preoccuparsi del data center, è comunque necessario applicare patch e risolvere i problemi delle macchine virtuali di Azure, dei database di failover e configurare le reti virtuali.

Usando l'automazione esistente che esegue Azure, gli strumenti da riga di comando riducono il sovraccarico.

Che cosa sono gli strumenti da riga di comando di Azure?

Gli strumenti da riga di comando di Azure automatizzano le operazioni di routine, standardizzano i failover del database e estraggono dati avanzati. Gli strumenti da riga di comando non solo offrono la possibilità di ridimensionare le attività in Azure, ma rendono anche molto più semplice la condivisione. La condivisione di uno script è molto più semplice rispetto a una lunga pagina wiki con screenshot dispendiosi in termini di tempo.

L'uso di uno strumento da riga di comando di Azure non è sempre necessario, ma è una competenza utile.

Interfaccia della riga di comando di Azure e Azure PowerShell

L'interfaccia della riga di comando di Azure e Azure PowerShell sono strumenti da riga di comando che consentono di creare e gestire le risorse di Azure. Entrambi sono multipiattaforma, installabili in Windows, macOS e Linux.

Interfaccia della riga di comando di Azure

  • Interfaccia della riga di comando multipiattaforma, installabile in Windows, macOS, Linux
  • Viene eseguito in Windows PowerShell, Cmd o Bash e in altre shell Unix.

Azure PowerShell

  • Modulo di PowerShell multipiattaforma, eseguito in Windows, macOS, Linux
  • Richiede Windows PowerShell o PowerShell

Ambienti della shell diversi

Ambiente di shell Interfaccia della riga di comando di Azure Azure PowerShell
Cmd
Bash
Windows PowerShell
PowerShell

Windows PowerShell, PowerShell, Cmd e Bash sono ambienti shell. L'ambiente shell non determina solo gli strumenti che è possibile usare, ma modifica anche l'esperienza della riga di comando.

Ad esempio, per il carattere di continuazione della riga, Bash usa la barra \ rovesciata mentre Windows PowerShell usa l'elemento backtick `. Le differenze nell'ambiente shell non cambiano il funzionamento dell'interfaccia della riga di comando di Azure e di Azure PowerShell. Tuttavia, cambiano l'esperienza della riga di comando.

L'interfaccia della riga di comando di Azure ha un programma di installazione che rende eseguibili i comandi in tutti e quattro gli ambienti shell.

Azure PowerShell è un set di cmdlet inseriti in un pacchetto come modulo di PowerShell denominato Az, non come eseguibile. Per installare il Az modulo, è necessario usare Windows PowerShell o PowerShell.

Windows PowerShell è la shell di scripting standard preinstallata con la maggior parte dei sistemi operativi Windows. PowerShell è un'installazione autonoma che usa .NET Core come runtime, consentendo l'installazione in macOS, Linux e Windows.

Punti principali:

  • AzureRM è un modulo di PowerShell a cui si fa ancora riferimento per l'amministrazione di Azure con PowerShell. Tuttavia, è stata sostituita da Azure PowerShell e ha una data ufficiale di ritiro del 29 febbraio 2024.

Se si usa AzureRM, è possibile eseguire la migrazione di Azure PowerShell da AzureRM ad Az.

Che ne dici di Azure Cloud Shell?

Azure Cloud Shell è un ambiente shell ospitato in esecuzione in un contenitore Ubuntu.

Cloud Shell offre due ambienti shell: Bash (con l'interfaccia della riga di comando di Azure preinstallata) e PowerShell (con Azure PowerShell preinstallato). Un elenco a discesa nella parte superiore della finestra di Cloud Shell consente di passare facilmente tra i due ambienti.

Cloud Shell è accessibile in un Web browser e include integrazioni per Terminale Windows e Visual Studio Code.

Azure CloudShell Bash and PowerShell environments

Nota

Azure Cloud Shell potrebbe non riflettere sempre immediatamente le versioni più recenti di Azure PowerShell e dell'interfaccia della riga di comando di Azure, perché la pianificazione di pubblicazione per tutti e tre gli strumenti è diversa. Tuttavia, Azure Cloud Shell è generalmente pensato per contenere sempre le versioni più recenti di entrambi gli strumenti.

Quale strumento da riga di comando di Azure è ideale per l'utente?

Per scegliere lo strumento adatto, tenere in considerazione l'esperienza precedente e l'ambiente di lavoro corrente.

La sintassi dell'interfaccia della riga di comando di Azure è simile a quella degli script Bash. Se si lavora principalmente con sistemi Linux, l'interfaccia della riga di comando di Azure risulta più naturale.

Azure PowerShell è un modulo di PowerShell. Se si lavora principalmente con sistemi Windows, Azure PowerShell risulta naturale. I comandi seguono uno schema di denominazione verbo-sostantivo e i dati vengono restituiti come oggetti.

Scegliere lo strumento che usa l'esperienza e accorcia la curva di apprendimento. Sfruttare i vantaggi dell'apprendimento Microsoft per diventare esperti nella gestione di Azure dalla riga di comando.

Detto questo, essere apertamente mente migliorerà solo le tue abilità. Usare uno strumento diverso quando è opportuno.

Punti principali:

  • La parità delle funzionalità per i servizi di Azure non esiste sempre tra l'interfaccia della riga di comando di Azure e Azure PowerShell.

Interfaccia della riga di comando di Azure e Azure PowerShell: confronto tra comandi side-by-side

Comandi per l'accesso, la sottoscrizione e la posizione:

Comando Interfaccia della riga di comando di Azure Azure PowerShell
Accedi con un Web browser az login Connect-AzAccount
Ottenere le sottoscrizioni disponibili az account list Get-AzSubscription
Impostare la sottoscrizione az account set –-subscription <SubscriptionId> Set-AzContext -SubscriptionID <>
Elencare le posizioni di Azure az account list-locations Get-AzLocation

Trovare versioni, ottenere la Guida e visualizzare la Guida dei comandi:

Comando Interfaccia della riga di comando di Azure Azure PowerShell
Trova versione az --version Get-InstalledModule -Name Az
Supporto az --help Get-Help
Visualizzare la Guida dei comandi az vm --help Get-Help -Name New-AzVM

Creare un gruppo di risorse, una macchina virtuale e un account Archiviazione:

Comando Interfaccia della riga di comando di Azure Azure PowerShell
Finestra Crea gruppo di risorse az group create --name <ResourceGroupName> --location eastus New-AzResourceGroup -Name <ResourceGroupName> -Location eastus
Creare una macchina virtuale di Azure az vm create --resource-group myResourceGroup --name myVM --image UbuntuLTS --admin-username azureuser --admin-password '<Password>' New-AzVM -ResourceGroupName ResourceGroupName <> -Name myVM -Image UbuntuLTS -Credential (Get-Credential)
Creare un account di archiviazione di Azure az storage account create --name <Archiviazione AccountName> --resource-group <ResourceGroupName> --location eastus --sku Standard_LRS --kind Archiviazione V2 New-Az Archiviazione Account -Name <Archiviazione AccountName -ResourceGroupName> ResourceGroupName <> -Location eastus -SkuName Standard_LRS -Kind Archiviazione V2

Gestire Macchine virtuali di Azure:

Comando Interfaccia della riga di comando di Azure Azure PowerShell
Elencare la macchina virtuale az vm list Get-AzVM
Riavviare la macchina virtuale az vm restart --name myVM --resource-group <ResourceGroupName> Restart-AzVM -Name myVM -ResourceGroupName ResourceGroupName <>
Arrestare la macchina virtuale az vm stop --name myVM --resource-group <ResourceGroupName> Stop-AzVM -Name myVM -ResourceGroupName ResourceGroupName <>
Arrestare e deallocare la macchina virtuale az vm deallocate --name myVM --resource-group <ResourceGroupName> Stop-AzVM -Name myVM -ResourceGroupName ResourceGroupName <>
Avvia macchina virtuale az vm start --name myVM --resource-group <ResourceGroupName> Start-AzVM -Name myVM -ResourceGroupName ResourceGroupName <>
Eliminare una macchina virtuale az vm delete --name myVM --resource-group <ResourceGroupName> Remove-AzVM -Name myVM -ResourceGroupName ResourceGroupName <>

Selezionare Proprietà e Modificare i formati di output:

Comando Interfaccia della riga di comando di Azure Azure PowerShell
Mostra tutte le informazioni sulla sottoscrizione az account list --all Get-AzSubscription | Select-Object -Property *
Output come tabella az account list -o table Get-AzSubscription | Format-Table
Output come JSON visualizzazione account az Get-AzSubscription | ConvertTo-Json

Punti principali:

  • Per impostazione predefinita, l'interfaccia della riga di comando di Azure restituisce una stringa JSON. Altre opzioni di formato sono disponibili nei formati di output per i comandi dell'interfaccia della riga di comando di Azure.
  • Per impostazione predefinita, Azure PowerShell restituisce oggetti di output. Per altre informazioni sulla formattazione in PowerShell, vedere Uso dei comandi di formato per modificare la visualizzazione output.

Passaggi successivi

Interfaccia della riga di comando di Azure:

Azure PowerShell: