Välj rätt kommandoradsverktyg för Azure
När det gäller att hantera Azure har du många alternativ. Den här artikeln jämför språket Azure CLI och Azure PowerShell och ger en jämförelse av de gränssnittsmiljöer som de körs på.
Azure CLI, Azure PowerShell och Azure Cloud Shell har överlappande funktioner. Var och en fungerar på olika sätt, och språket förväxlas ibland med miljön. Använd den här guiden för att avgöra vilket som är rätt verktyg åt dig.
Vad är fördelen med att använda ett Azure-kommandoradsverktyg?
Azure körs med automatisering. Varje åtgärd du vidtar i portalen översätts någonstans till kod som körs för att läsa, skapa, ändra eller ta bort resurser.
Att flytta din arbetsbelastning till Azure lyfter en del av den administrativa bördan, men inte alla. I takt med att din implementeringstakt med Azure ökar kommer även kostnaderna att öka. Även om du inte behöver oroa dig för datacentret måste du fortfarande korrigera och felsöka virtuella Azure-datorer, redundansdatabaser och konfigurera virtuella nätverk.
Genom att använda den befintliga automatiseringen som kör Azure minskar kommandoradsverktygen den kostnaden.
Vad är Kommandoradsverktyg i Azure?
Azures kommandoradsverktyg automatiserar rutinåtgärder, standardiserar databasredundans och hämtar data som ger kraftfull insikt. Kommandoradsverktyg ger dig inte bara möjlighet att skala dina uppgifter i Azure, utan de gör också mycket enklare att dela. Att dela ett skript är mycket enklare än en lång wiki-sida med tidskrävande skärmbilder.
Det är inte alltid nödvändigt att använda ett Azure-kommandoradsverktyg, men det är en användbar färdighet att ha.
Azure CLI jämfört med Azure PowerShell
Azure CLI och Azure PowerShell är kommandoradsverktyg som gör att du kan skapa och hantera Azure-resurser. Båda är plattformsoberoende och kan installeras i Windows, macOS och Linux.
Azure CLI
- Plattformsoberoende kommandoradsgränssnitt som kan installeras på Windows, macOS, Linux
- Körs i Windows PowerShell, Cmd eller Bash och andra Unix-gränssnitt.
Azure PowerShell
- Plattformsoberoende PowerShell-modul, körs på Windows, macOS, Linux
- Kräver Windows PowerShell eller PowerShell
Olika gränssnittsmiljöer
Shell-miljö | Azure CLI | Azure PowerShell |
---|---|---|
Cmd | Ja | |
Bash | Ja | |
Windows PowerShell | Ja | Ja |
PowerShell | Ja | Ja |
Windows PowerShell, PowerShell, Cmd och Bash är gränssnittsmiljöer. Gränssnittsmiljön avgör inte bara vilka verktyg du kan använda, utan ändrar även kommandoradsmiljön.
För linjefortsättningstecknet använder Bash till exempel omvänt snedstreck \
medan Windows PowerShell använder backticken `
. Skillnaderna i gränssnittsmiljön ändrar inte hur Azure CLI och Azure PowerShell fungerar. De ändrar dock din kommandoradsupplevelse.
Azure CLI har ett installationsprogram som gör dess kommandon körbara i alla fyra gränssnittsmiljöerna.
Azure PowerShell är en uppsättning cmdletar som paketeras som en PowerShell-modul med namnet Az
; inte en körbar fil. Windows PowerShell eller PowerShell måste användas för att installera modulen Az
.
Windows PowerShell är standardskriptgränssnittet som levereras förinstallerat med de flesta Windows-operativsystem. PowerShell är en fristående installation som använder .NET Core som körningstid, vilket gör att den kan installeras på macOS, Linux och Windows.
Viktiga punkter:
- AzureRM är en PowerShell-modul som fortfarande refereras för Azure-administration med PowerShell. Den har dock ersatts av Azure PowerShell och har ett officiellt slutdatum för pensionering den 29 februari 2024.
Om du använder AzureRM kan du migrera Azure PowerShell från AzureRM till Az.
Hur är det med Azure Cloud Shell?
Azure Cloud Shell är en värdbaserad gränssnittsmiljö som körs på en Ubuntu-container.
Cloud Shell tillhandahåller två gränssnittsmiljöer: Bash (med Azure CLI förinstallerat) och PowerShell (med Azure PowerShell förinstallerat). Med en listruta överst i Cloud Shell-fönstret kan du enkelt växla mellan de två miljöerna.
Cloud Shell är tillgängligt i en webbläsare och har integreringar för Windows-terminal och Visual Studio Code.
Kommentar
Azure Cloud Shell kanske inte alltid direkt återspeglar de senaste Versionerna av Azure PowerShell och Azure CLI eftersom publiceringsschemat för alla tre verktygen skiljer sig åt. Azure Cloud Shell tros dock vanligtvis alltid innehålla de senaste versionerna av båda verktygen.
Vilket Kommandoradsverktyg i Azure passar dig?
När du väljer rätt verktyg bör du tänka på din tidigare erfarenhet och aktuella arbetsmiljö.
Azure CLI-syntaxen liknar bash-skript. Om du främst arbetar med Linux-system känns Azure CLI mer naturligt.
Azure PowerShell är en PowerShell-modul. Om du främst arbetar med Windows-system passar Azure PowerShell naturligt. Kommandon följer ett verb-substantiv namngivningsschema och data returneras som objekt.
Välj det verktyg som använder din upplevelse och förkortar inlärningskurvan. Dra nytta av Microsofts utbildning för att bli skicklig på att hantera Azure på kommandoraden.
Med det sagt, att vara öppensinnad kommer bara att förbättra dina förmågor. Använd ett annat verktyg när det är logiskt.
Viktiga punkter:
- Funktionsparitet för Azure-tjänster finns inte alltid mellan Azure CLI och Azure PowerShell.
Azure CLI jämfört med Azure PowerShell: Kommandojämförelse sida vid sida
Inloggnings-, prenumerations- och platskommandon:
Command | Azure CLI | Azure PowerShell |
---|---|---|
Logga in med webbläsare | az login | Anslut-AzAccount |
Hämta tillgängliga prenumerationer | az account list | Get-AzSubscription |
Ange prenumeration | az account set –-subscription <SubscriptionId> | Set-AzContext -Subscription <SubscriptionID> |
Lista Azure-platser | az account list-locations | Get-AzLocation |
Hitta versioner, få hjälp och visa kommandohjälp:
Command | Azure CLI | Azure PowerShell |
---|---|---|
Hitta version | az --version | Get-InstalledModule -Name Az |
Få hjälp | az --help | Get-Help |
Visa kommandohjälp | az vm --help | Get-Help -Name New-AzVM |
Skapa en resursgrupp, virtuell dator och ett lagringskonto:
Command | Azure CLI | Azure PowerShell |
---|---|---|
Skapa resursgrupp | az group create --name <ResourceGroupName> --location eastus | New-AzResourceGroup -Name <ResourceGroupName> -Location eastus |
Skapa en virtuell Azure-dator | 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) |
Skapa ett Azure Storage-konto | az storage account create --name <StorageAccountName> --resource-group <ResourceGroupName> --location eastus --sku Standard_LRS --kind StorageV2 | New-AzStorageAccount -Name <StorageAccountName> -ResourceGroupName <ResourceGroupName> -Location eastus -SkuName Standard_LRS -Kind StorageV2 |
Hantera virtuella Azure-datorer:
Command | Azure CLI | Azure PowerShell |
---|---|---|
Visa lista över virtuella datorer | az vm list | Get-AzVM |
Starta om virtuell dator | az vm restart --name myVM --resource-group <ResourceGroupName> | Restart-AzVM -Name myVM -ResourceGroupName <ResourceGroupName> |
Stoppa virtuell dator | az vm stop --name myVM --resource-group <ResourceGroupName> | Stop-AzVM -Name myVM -ResourceGroupName <ResourceGroupName> |
Stoppa och frigöra virtuell dator | az vm deallocate --name myVM --resource-group <ResourceGroupName> | Stop-AzVM -Name myVM -ResourceGroupName <ResourceGroupName> |
Starta virtuell dator | az vm start --name myVM --resource-group <ResourceGroupName> | Start-AzVM -Name myVM -ResourceGroupName <ResourceGroupName> |
Ta bort virtuell dator | az vm delete --name myVM --resource-group <ResourceGroupName> | Remove-AzVM -Name myVM -ResourceGroupName <ResourceGroupName> |
Välj Egenskaper och Ändra utdataformat:
Command | Azure CLI | Azure PowerShell |
---|---|---|
Visa all prenumerationsinformation | az account list --all | Get-AzSubscription | Select-Object -Property * |
Utdata som en tabell | az account list -o table | Get-AzSubscription | Formattabell |
Utdata som JSON | az account show | Get-AzSubscription | ConvertTo-Json |
Viktiga punkter:
- Azure CLI matar som standard ut en JSON-sträng. Andra formatalternativ finns i utdataformaten för Azure CLI-kommandon.
- Azure PowerShell kan som standard mata ut objekt. Mer information om formatering i PowerShell finns i Använda formatkommandon för att ändra utdatavyn.
Nästa steg
Azure CLI:
Azure PowerShell: