Migrera PowerShell-skript automatiskt från AzureRM till Az PowerShell-modulen
Artikel
I den här artikeln får du lära dig hur du använder PowerShell-modulen Az.Tools.Migration för att automatiskt uppgradera dina PowerShell-skript och skriptmoduler från AzureRM till Az PowerShell-modulen. Ytterligare migreringsalternativ finns i Migrera Azure PowerShell från AzureRM till Az.
Varning
AzureRM PowerShell-modulen är officiellt inaktuell från och med den 29 februari 2024. Användare rekommenderas att migrera från AzureRM till Az PowerShell-modulen för att säkerställa fortsatt support och uppdateringar.
Även om AzureRM-modulen fortfarande kan fungera, underhålls den inte längre eller stöds, vilket gör att användaren kan välja och riskera fortsatt användning. Se våra migreringsresurser för vägledning om övergången till Az-modulen.
Du använder cmdleten New-AzUpgradeModulePlan för att generera en uppgraderingsplan för migrering av skript och moduler till Az PowerShell-modulen. Den här cmdleten gör inga ändringar i dina befintliga skript. Använd parametern FilePath för att rikta in dig på ett visst skript eller parametern DirectoryPath för att rikta in dig på alla skript i en specifik mapp.
Anteckning
Den New-AzUpgradeModulePlan cmdleten kör inte planen, den genererar bara uppgraderingsstegen.
I följande exempel genereras en plan för alla skript i mappen C:\Scripts. Parametern OutVariable anges så att resultaten returneras och lagras samtidigt i en variabel med namnet Plan.
PowerShell
# Generate an upgrade plan for all the scripts and module files in the specified folder and save it to a variable.New-AzUpgradeModulePlan -FromAzureRmVersion6.13.1 -ToAzVersion latest -DirectoryPath'C:\Scripts' -OutVariable Plan
Som du ser i följande utdata beskriver uppgraderingsplanen den specifika filen och förskjutningspunkterna som kräver ändringar när du flyttar från AzureRM till Az PowerShell-cmdletarna.
Innan du utför uppgraderingen måste du granska planens resultat för eventuella problem. I följande exempel returneras en lista över skript och objekt i skripten som förhindrar att de uppgraderas automatiskt.
PowerShell
# Filter plan results to only warnings and errors$Plan | Where-Object PlanResult -ne ReadyToUpgrade | Format-List
Objekten som visas i följande utdata uppgraderas inte automatiskt utan att problemen åtgärdas manuellt först.
Output
Order : 42
UpgradeType : CmdletParameter
PlanResult : ErrorParameterNotFound
PlanSeverity : Error
PlanResultReason : Parameter was not found in Get-AzResource or it's aliases.
SourceCommand : CommandReference
SourceCommandParameter : CommandReferenceParameter
Location : devtestlab-add-marketplace-image-to-lab.ps1:14:74
FullPath : C:\Scripts\devtestlab-add-marketplace-image-to-lab.ps1
StartOffset : 556
Original : ResourceNameEquals
Replacement :
Steg 2: Utför uppgraderingen
Varning
Det finns ingen ångra-åtgärd. Se alltid till att du har en säkerhetskopia av dina PowerShell-skript och moduler som du försöker uppgradera.
När du är nöjd med planen utförs uppgraderingen med cmdleten Invoke-AzUpgradeModulePlan. Ange SaveChangesToNewFiles för parametervärdet FileEditMode för att förhindra att ändringar görs i dina ursprungliga skript. När du använder det här läget utförs uppgraderingen genom att skapa en kopia av varje script där _az_upgraded läggs till i filnamnen.
Varning
Cmdleten Invoke-AzUpgradeModulePlan är destruktiv när alternativet -FileEditMode ModifyExistingFiles anges! Den ändrar dina skript och funktioner på plats enligt moduluppgraderingsplanen som genereras av New-AzUpgradeModulePlan-cmdleten. För det icke-destruktiva alternativet anger du -FileEditMode SaveChangesToNewFiles i stället.
PowerShell
# Execute the automatic upgrade plan and save the results to a variable.Invoke-AzUpgradeModulePlan -Plan$Plan -FileEditMode SaveChangesToNewFiles -OutVariable Results
Lär dig hur du migrerar en arbetsbelastning som körs i Windows Server till en virtuell IaaS-dator (infrastruktur som en tjänst) och till Windows Server 2025 med hjälp av Migreringsverktyg för Windows Server eller Storage Migration Service.
Översikt över AzureRM PowerShell-modulens tillbakadragning, inklusive steg och verktyg för att migrera Azure PowerShell-skript från AzureRM till Az PowerShell-modulen.