Auswählen des richtigen Azure-Befehlszeilentools
Azure kann auf verschiedenste Weise verwaltet werden. In diesem Artikel werden die Azure CLI und die Azure PowerShell-Sprache sowie die Shellumgebungen, in denen sie ausgeführt werden, miteinander verglichen.
Die Funktionen von Azure CLI, Azure PowerShell und Azure Cloud Shell überschneiden sich zum Teil. Die Funktionsweise ist allerdings jeweils unterschiedlich, und die Sprache wird bisweilen mit der Umgebung verwechselt. In diesem Leitfaden erfahren Sie, welches Tool das richtige für Sie ist.
Welchen Vorteil hat die Verwendung eines Azure-Befehlszeilentools?
Azure basiert auf Automatisierungen. Jede Aktion, die Sie im Portal ausführen, hat die Ausführung von Code zur Folge, um Ressourcen zu lesen, zu erstellen, zu ändern oder zu löschen.
In Azure verringert sich zwar der Verwaltungsaufwand für Ihre Workload, einige Verwaltungsaufgaben müssen aber trotzdem noch ausgeführt werden. Mit zunehmender Nutzung von Azure erhöht sich auch der Aufwand. Zwar müssen Sie sich nicht um das Rechenzentrum kümmern, aber Dinge wie Patching und Problembehandlung für virtuelle Azure-Computer, Datenbankfailover oder das Konfigurieren virtueller Netzwerke stehen weiterhin auf der Tagesordnung.
Befehlszeilentools nutzen die bereits vorhandene Automatisierung für Azure und verringern so diesen Aufwand.
Worum handelt es sich bei Azure-Befehlszeilentools?
Azure-Befehlszeilentools automatisieren Routinevorgänge, standardisieren Datenbankfailover und pullen Daten, die wichtige Erkenntnisse liefern. Mit Befehlszeilentools können Sie nicht nur Ihre Aufgaben in Azure skalieren, sondern auch die Freigabe vereinfachen. Ein Skript lässt sich viel einfacher freigeben als eine lange Wiki-Seite mit zeitaufwendigen Screenshots.
Die Verwendung eines Azure-Befehlszeilentools ist nicht immer erforderlich, kann aber bisweilen hilfreich sein.
Vergleich von Azure CLI und Azure PowerShell
Azure CLI und Azure PowerShell sind Befehlszeilentools, mit denen Sie Azure-Ressourcen erstellen und verwalten können. Beide sind plattformübergreifend und unter Windows, macOS und Linux installierbar.
Azure-Befehlszeilenschnittstelle
- Plattformübergreifende Befehlszeilenschnittstelle, installierbar unter Windows, macOS und Linux
- Kann in Windows PowerShell, Cmd sowie in Bash und anderen Unix-Shells ausgeführt werden
Azure PowerShell
- Plattformübergreifendes PowerShell-Modul, das unter Windows, macOS, Linux ausgeführt werden kann
- Erfordert Windows PowerShell oder PowerShell
Verschiedene Shellumgebungen
Shellumgebung | Azure CLI | Azure PowerShell |
---|---|---|
Cmd | Ja | |
Bash | Ja | |
Windows PowerShell | Ja | Ja |
PowerShell | Ja | Ja |
Windows PowerShell, PowerShell, Cmd, und Bash sind Shellumgebungen. Ihre Shellumgebung bestimmt nicht nur, welche Tools Sie verwenden können, sondern hat auch Einfluss auf Ihre Befehlszeilenumgebung.
So wird beispielsweise in Bash ein umgekehrter Schrägstrich (\
) als Zeilenfortsetzungszeichen verwendet, in Windows PowerShell dagegen ein Backtick (`
). Die Unterschiede bei der Shellumgebung haben keine Auswirkung auf die Funktionsweise von Azure CLI und Azure PowerShell. Sie beeinflussen jedoch die Verwendung der Befehlszeile.
Azure CLI verfügt über ein Installationsprogramm, das die zugehörigen Befehle in allen vier Shellumgebungen ausführbar macht.
Bei Azure PowerShell handelt es sich um eine Reihe von Cmdlets, die als PowerShell-Modul namens Az
verpackt sind, nicht als ausführbare Datei. Zum Installieren des Moduls Az
muss Windows PowerShell oder PowerShell verwendet werden.
Windows PowerShell ist die standardmäßige Skriptshell, die bei den meisten Windows-Betriebssystemen vorinstalliert ist. PowerShell ist eine eigenständige Installation mit .NET Core als Runtime, was die Installation unter macOS, Linux und Windows ermöglicht.
Die wichtigsten Punkte:
- AzureRM ist ein PowerShell-Modul, auf das weiterhin bei der Azure-Verwaltung mit PowerShell verwiesen wird. Es wurde jedoch durch Azure PowerShell ersetzt und wird offiziell am 29. Februar 2024 ausgemustert.
Wenn Sie AzureRM verwenden, können Sie Azure PowerShell von AzureRM zu Az migrieren.
Informationen zu Azure Cloud Shell
Azure Cloud Shell ist eine gehostete Shellumgebung, die in einem Ubuntu-Container ausgeführt wird.
Cloud Shell bietet zwei Shellumgebungen: Bash (mit Azure CLI vorinstalliert) und PowerShell (mit Azure PowerShell vorinstalliert). Über eine Dropdownliste im oberen Bereich des Cloud Shell-Fensters können Sie problemlos zwischen den beiden Umgebungen wechseln.
Cloud Shell ist über einen Webbrowser erreichbar und verfügt über Integrationen für Windows-Terminal und Visual Studio Code.
Hinweis
Möglicherweise spiegelt Azure Cloud Shell nicht immer direkt die neuesten Azure PowerShell- und Azure CLI-Versionen wider, da der Veröffentlichungszeitplan für alle drei Tools unterschiedlich ist. Im Allgemeinen wird jedoch davon ausgegangen, dass Azure Cloud Shell immer die neuesten Versionen beider Tools enthält.
Welches Azure-Befehlszeilentool ist das richtige für Sie?
Berücksichtigen Sie bei der Wahl des richtigen Tools Ihre bisherige Erfahrung sowie die aktuelle Arbeitsumgebung.
Die Azure CLI-Syntax ähnelt der Syntax von Bash-Skripts. Wenn Sie in erster Linie mit Linux-Systemen arbeiten, bietet Ihnen die Azure CLI eine vertrautere Erfahrung.
Azure PowerShell ist ein PowerShell-Modul. Wenn Sie in erster Linie mit Windows-Systemen arbeiten, ist Azure PowerShell die bessere Wahl für Sie. Die Befehle basieren auf einer Verb-Nomen-Namenskonvention, und Daten werden als Objekte zurückgegeben.
Entscheiden Sie sich für das Tool, das besser zu Ihrer Erfahrung passt und Ihre Einarbeitungszeit verkürzt. Nutzen Sie Microsoft Learning, um sich mit der Verwaltung von Azure über die Befehlszeile vertraut zu machen.
Es schadet jedoch nichts, auch für andere Methoden offen zu sein. Verwenden Sie ein anderes Tool, wenn es sinnvoll ist.
Die wichtigsten Punkte:
- Zwischen Azure CLI und Azure PowerShell ist nicht immer Featureparität für Azure-Dienste gegeben.
Gegenüberstellung von Azure CLI- und Azure PowerShell-Befehlen
Befehle für Anmeldung, Abonnement und Standort:
Get-Help | Azure CLI | Azure PowerShell |
---|---|---|
Über Webbrowser anmelden | az login | Connect-AzAccount |
Verfügbare Abonnements abrufen | az account list | Get-AzSubscription |
Abonnement festlegen | az account set – -subscription <Abonnement-ID> | Set-AzContext -Subscription <Abonnement-ID> |
Azure-Standorte auflisten | az account list-locations | Get-AzLocation |
Suchen nach Versionen, Anzeigen der Hilfe und Anzeigen der Befehlshilfe:
Get-Help | Azure CLI | Azure PowerShell |
---|---|---|
Version suchen | az --version | Get-InstalledModule -Name Az |
Hilfe erhalten | az --help | Get-Help |
Befehlshilfe anzeigen | az vm --help | Get-Help -Name New-AzVM |
Erstellen einer Ressourcengruppe, eines virtuellen Computers und eines Speicherkontos:
Get-Help | Azure CLI | Azure PowerShell |
---|---|---|
Ressourcengruppe erstellen | az group create --name <Ressourcengruppenname> --location eastus | New-AzResourceGroup -Name <Ressourcengruppenname> -Location eastus |
Erstellen eines virtuellen Azure-Computers | az vm create --resource-group myResourceGroup --name myVM --image UbuntuLTS --admin-username azureuser --admin-password '<Kennwort>' | New-AzVM -ResourceGroupName <Ressourcengruppenname> -Name myVM -Image UbuntuLTS -Credential (Get-Credential) |
Erstellen eines Azure-Speicherkontos | az storage account create --name <Speicherkontoname> --resource-group <Ressourcengruppenname> --location eastus --sku Standard_LRS --kind StorageV2 | New-AzStorageAccount -Name <Speicherkontoname> -ResourceGroupName <Ressourcengruppenname> -Location eastus -SkuName Standard_LRS -Kind StorageV2 |
Verwalten virtueller Azure-Computer:
Get-Help | Azure CLI | Azure PowerShell |
---|---|---|
VM auflisten | az vm list | Get-AzVM |
VM neu starten | az vm restart --name myVM --resource-group <Ressourcengruppenname> | Restart-AzVM -Name myVM -ResourceGroupName <Ressourcengruppenname> |
Beenden der VM | az vm stop --name myVM --resource-group <Ressourcengruppenname> | Stop-AzVM -Name myVM -ResourceGroupName <Ressourcengruppenname> |
VM beenden und Zuordnung aufheben | az vm deallocate --name myVM --resource-group <Ressourcengruppenname> | Stop-AzVM -Name myVM -ResourceGroupName <Ressourcengruppenname> |
VM starten | az vm start --name myVM --resource-group <Ressourcengruppenname> | Start-AzVM -Name myVM -ResourceGroupName <Ressourcengruppenname> |
Löschen eines virtuellen Computers | az vm delete --name myVM --resource-group <Ressourcengruppenname> | Remove-AzVM -Name myVM -ResourceGroupName <Ressourcengruppenname> |
Auswählen von Eigenschaften und Ändern von Ausgabeformaten:
Get-Help | Azure CLI | Azure PowerShell |
---|---|---|
Alle Abonnementinformationen anzeigen | az account list --all | Get-AzSubscription | Select-Object -Property * |
Als Tabelle ausgeben | az account list -o table | Get-AzSubscription | Format-Table |
Als JSON ausgeben | az account show | Get-AzSubscription | ConvertTo-Json |
Die wichtigsten Punkte:
- Von der Azure CLI wird standardmäßig eine JSON-Zeichenfolge ausgegeben. Weitere Formatoptionen finden Sie unter Ausgabeformate für Azure CLI-Befehle.
- Von Azure PowerShell werden standardmäßig Objekte ausgegeben. Weitere Informationen zur Formatierung in PowerShell finden Sie unter Verwenden von „Format“-Befehlen zum Ändern der Ausgabeanzeige.
Nächste Schritte
Azure CLI:
Azure PowerShell: