PowerShell-scripts automatisch migreren van AzureRM naar de Az PowerShell-module
Artikel
In dit artikel leert u hoe u de PowerShell-module Az.Tools.Migration gebruikt om automatisch uw PowerShell-scripts en scriptmodules van AzureRM te upgraden naar de Az PowerShell-module. Zie Azure PowerShell migreren van AzureRM naar Azvoor aanvullende migratieopties.
Waarschuwing
De AzureRM PowerShell-module is vanaf 29 februari 2024 officieel afgeschaft. Gebruikers wordt aangeraden om van AzureRM naar de Az PowerShell-module te migreren om ondersteuning en updates te garanderen.
Hoewel de AzureRM-module nog steeds kan functioneren, wordt deze niet meer onderhouden of ondersteund, waardoor het gebruik naar eigen goeddunken en risico van de gebruiker blijft bestaan. Raadpleeg onze migratiebronnen voor hulp bij de overgang naar de Az-module.
Installeer de PowerShell-module Az.Tools.Migration.
PowerShell
Install-Module -Name Az.Tools.Migration
Stap 1: Een upgradeplan genereren
U gebruikt de cmdlet New-AzUpgradeModulePlan om een upgradeplan te genereren voor het migreren van uw scripts en modules naar de Az PowerShell-module. Met deze cmdlet worden uw bestaande scripts niet gewijzigd. Gebruik de parameter FilePath voor het instellen van een specifiek script of de parameter DirectoryPath voor het instellen van alle scripts in een specifieke map.
Notitie
De New-AzUpgradeModulePlan-cmdlet voert het plan niet uit, maar genereert alleen de upgradestappen.
In het volgende voorbeeld wordt een plan gegenereerd voor alle scripts in de map C:\Scripts. De parameter OutVariable wordt opgegeven, zodat de resultaten worden geretourneerd en tegelijkertijd worden opgeslagen in een variabele met de naam 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
Zoals in de volgende uitvoer wordt weergegeven, worden in het upgradeplan de specifieke bestands- en offsetpunten beschreven waarvoor wijzigingen nodig zijn bij het overstappen van AzureRM naar de Az PowerShell-cmdlets.
Voordat u de upgrade uitvoert, moet u de resultaten van het plan voor problemen bekijken. In het volgende voorbeeld wordt een lijst met scripts en de items in deze scripts geretourneerd die verhinderen dat ze automatisch worden bijgewerkt.
PowerShell
# Filter plan results to only warnings and errors$Plan | Where-Object PlanResult -ne ReadyToUpgrade | Format-List
De items die in de volgende uitvoer worden weergegeven, worden niet automatisch bijgewerkt zonder eerst de problemen handmatig te corrigeren.
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 :
Stap 2: de upgrade uitvoeren
Waarschuwing
Er is geen ongedaan maken-functie. Zorg er altijd voor dat u een back-up hebt van uw PowerShell-scripts en -modules die u wilt upgraden.
Nadat u tevreden bent met het plan, wordt de upgrade uitgevoerd met de Invoke-AzUpgradeModulePlan cmdlet. Geef SaveChangesToNewFiles op voor de parameterwaarde FileEditMode om te voorkomen dat wijzigingen worden aangebracht in de oorspronkelijke scripts. Wanneer u deze modus gebruikt, wordt de upgrade uitgevoerd door van elk script een kopie te maken, waarbij _az_upgraded aan de bestandsnamen wordt toegevoegd.
Waarschuwing
De Invoke-AzUpgradeModulePlan cmdlet is destructief wanneer de -FileEditMode ModifyExistingFiles optie is opgegeven. Het wijzigt uw scripts en functies op basis van het module-upgradeplan dat is gegenereerd door de New-AzUpgradeModulePlan cmdlet. Geef voor de niet-destructieve optie in plaats daarvan -FileEditMode SaveChangesToNewFiles op.
PowerShell
# Execute the automatic upgrade plan and save the results to a variable.Invoke-AzUpgradeModulePlan -Plan$Plan -FileEditMode SaveChangesToNewFiles -OutVariable Results
De bron voor deze inhoud vindt u op GitHub, waar u ook problemen en pull-aanvragen kunt maken en controleren. Bekijk onze gids voor inzenders voor meer informatie.
Azure PowerShell-feedback
Azure PowerShell is een open source project. Selecteer een koppeling om feedback te geven:
Leer hoe u een workload die in Windows Server wordt uitgevoerd, migreert naar een iaaS-VM (Infrastructure as a Service) en naar Windows Server 2025 met behulp van hulpprogramma's voor migratie van Windows Server of de Storage Migration Service.
Als hybride beheerder van Windows Server integreert u Windows Server-omgevingen met Azure-services en beheert u Windows Server in on-premises netwerken.
Overzicht van de Az.Tools.Migration PowerShell-module die is ontwikkeld en onderhouden door het Azure PowerShell-team, maar geen deel uitmaakt van de Az PowerShell-module.
Overzicht van de buitengebruikstelling van de AzureRM PowerShell-module, inclusief stappen en hulpprogramma's voor het migreren van Azure PowerShell-scripts van AzureRM naar de Az PowerShell-module.