Migrera Azure PowerShell från AzureRM till Az

Alla versioner av AzureRM PowerShell-modulen är inaktuella. Az PowerShell-modulen är nu den rekommenderade PowerShell-modulen för att interagera med Azure.

Varför en ny modul?

Den största och viktigaste ändringen är att PowerShell,med .NET Standard-biblioteket, har varit en produkt på flera plattformar sedan den infördes.

Precis som med PowerShell-språket vill vi lägga till Azure-supporten på alla plattformar. Vårt åtagande innebar att Azure PowerShell-modulerna behövde uppdateras för att kunna använda .NET Standard och vara kompatibla med PowerShell Core. Az-modulen skapades istället för att ändra den befintliga AzureRM-modulen och introducera komplexa ändringar för att lägga till detta stöd.

Genom att skapa en ny modul kunde våra tekniker även göra design, namngivning av cmdlets och moduler konsekventa. Alla moduler börjar nu med Az. prefix och cmdlets som alla använder Verb-AzNoun namngivningskonventioner. Tidigare var cmdlet-namnen längre och inkonsekventa.

Antalet moduler har också minskats: Vissa moduler som fungerade med samma tjänster har kombinerats. Hanteringsplan och dataplanscmdlets för samma tjänst finns nu i en enda modul. Den här konsolideringen underlättar för dem som hanterar beroenden och importer manuellt.

Genom att göra de här viktiga ändringarna har teamet strävar efter att göra det enklare än någonsin tidigare och på fler plattformar än tidigare varit möjligt att använda Azure med PowerShell-cmdlets.

Uppgradera till Az PowerShell

Skript som skrivits för AzureRM-cmdlets fungerar inte automatiskt med Az. För att göra övergången enklare har migreringsverktygen AzureRM till Az utvecklats. Det är aldrig praktiskt att migrera till en ny kommandouppsättning, men i den här artikeln får du hjälp att komma igång med övergången till Az PowerShell-modulen. Mer information om varför Az PowerShell-modulen skapades finns i Introduktion till den nya Azure PowerShell Az-modulen.

De nya cmdlet-namnen har utformats för att vara lätta att lära sig. I stället för AzureRm att använda eller i Azure cmdlet-namn använder du Az . Den gamla cmdleten har till exempel New-AzureRMVm blivit New-AzVm . Men migrering är mer än att bara bekanta dig med de nya cmdlet-namnen. Det finns namnändrade moduler, parametrar och andra viktiga ändringar.

En fullständig lista över hur ändringar bryts mellan AzureRM och Az finns i de fullständiga ändringarna från AzureRM till Az.

Se till att befintliga skript fungerar med den senaste AzureRM-versionen

Innan du vidtar några migreringssteg ska du kontrollera vilka versioner av AzureRM som är installerade på systemet. På så sätt kan du kontrollera att skript redan körs på den senaste versionen och berätta vilka versioner av AzureRM som måste avinstalleras.

Om du vill kontrollera vilka versioner av AzureRM du har installerade kör du följande exempel:

Get-Module -Name AzureRM -ListAvailable -All

Den senaste tillgängliga versionen av AzureRM är 6.13.1. Om du inte har den här versionen installerad kan dina befintliga skript behöva ytterligare ändringar för att arbeta med Az-modulen utöver det som beskrivs i den här artikeln och i brytningslistan.

Om skripten inte fungerar med AzureRM 6.13.1 uppdaterar du dem enligt Migreringsguiden för AzureRM 5.x till 6.x. Om du använder en tidigare version av AzureRM-modulen finns det migreringsguider för varje huvudversion.

Det här rekommenderade alternativet minimerar det arbete som krävs för att migrera AzureRM-skript till Az.

Installera migreringsverktygen AzureRM till Az

Install-Module -Name Az.Tools.Migration

Konvertera skripten automatiskt

Med migreringsverktygen AzureRM till Az kan du skapa en plan för att avgöra vilka ändringar som ska utföras på dina skript innan du gör några ändringar i dem och innan du installerar Az PowerShell-modulen.

Med snabbstartsstarten för att migrera PowerShell-skript automatiskt från AzureRM till Az PowerShell-modulen får du hjälp med att uppdatera dina PowerShell-skript automatiskt från AzureRM till Az PowerShell-modulen.

Alternativ 2: Använd kompatibilitetsläge med Enable-AzureRmAlias

Az-modulen har ett kompatibilitetsläge som hjälper dig att använda befintliga skript när du uppdaterar till den nya syntaxen. Med cmdleten Enable-AzureRmAlias aktiveras kompatibilitetsläget via alias. I det här läget kan du använda befintliga skript med minimal förändring när du arbetar mot en fullständig migrering till Az. Som standard Enable-AzureRmAlias aktiverar endast kompatibilitetsalias för den aktuella PowerShell-sessionen. Använd Scope parametern för att bevara kompatibilitetsalias i PowerShell-sessioner. Mer information finns i Enable-AzureRmAlias referensdokumentation.

Viktigt

Även om cmdlet-namnen aliasas kan det fortfarande finnas nya parametrar (eller bytt namn) eller ändrade returvärden för Az-cmdletarna. Vänta dig inte att alias ska ta hand om migreringen åt dig! Se hela listan över brytningsändringar för att ta reda på var dina skript kan kräva uppdateringar.

Alternativ 3: Migrera skripten i Visual Studio kod med Azure PowerShell tillägget

Installera Azure PowerShell för Visual Studio kod

Installera Azure PowerShell för VSCode

Konvertera skripten manuellt

  1. Läsa in ditt AzureRM-skript i VSCode
  2. Starta migreringen genom att öppna kommandopaletten Ctrl+Shift+P och välja Migrate Azure PowerShell script
  3. Välj källversion AzureRM
  4. Följ de rekommenderade åtgärderna för varje understruket kommando eller parameter.

Nästa steg