Icke-bakåtkompatibla ändringar för Az 1.0.0
I det här dokumentet finns detaljerad information om ändringar mellan AzureRM 6.x och den nya Az-modulen, version 1.x och senare. Innehållsförteckningen leder dig genom en fullständig migrering, inklusive modulspecifika ändringar som kan påverka skripten.
Allmänna råd om hur du kommer igång med en migrering från AzureRM till Az finns i Starta migrering från AzureRM till Az.
Viktigt!
Vi har infört icke-bakåtkompatibla ändringar mellan Az 1.0.0 och Az 2.0.0 också. När du har följt den guiden om hur du uppdaterar från AzureRM till Az kan du läsa om icke-bakåtkompatibla ändringar för Az 2.0.0 att ta reda på om du behöver göra ytterligare ändringar.
Innehållsförteckning
- Allmänna icke-bakåtkompatibla ändringar
- Icke-bakåtkompatibla ändringar
- Az.ApiManagement (tidigare AzureRM.ApiManagement)
- Az.Billing (tidigare AzureRM.Billing, AzureRM.Consumption och AzureRM.UsageAggregates)
- Az.CognitiveServices (tidigare AzureRM.CognitiveServices)
- Az.Compute (tidigare AzureRM.Compute)
- Az.DataFactory (tidigare AzureRM.DataFactories och AzureRM.DataFactoryV2)
- Az.DataLakeAnalytics (tidigare AzureRM.DataLakeAnalytics)
- Az.DataLakeStore (tidigare AzureRM.DataLakeStore)
- Az.KeyVault (tidigare AzureRM.KeyVault)
- Az.Media (tidigare AzureRM.Media)
- Az.Monitor (tidigare AzureRM.Insights)
- Az.Network (tidigare AzureRM.Network)
- Az.OperationalInsights (tidigare AzureRM.OperationalInsights)
- Az.RecoveryServices (tidigare AzureRM.RecoveryServices, AzureRM.RecoveryServices.Backup och AzureRM.RecoveryServices.SiteRecovery)
- Az.Resources (tidigare AzureRM.Resources)
- Az.ServiceFabric (tidigare AzureRM.ServiceFabric)
- Az.Sql (tidigare AzureRM.Sql)
- Az.Storage (tidigare Azure.Storage och AzureRM.Storage)
- Az.Websites (tidigare AzureRM.Websites)
Allmänna icke-bakåtkompatibla ändringar
I det här avsnittet beskriver vi de allmänna icke-bakåtkompatibla ändringarna i den nya utformningen av Az-modulen.
Ändringar av substantivprefix i cmdlet
I AzureRM-modulen är de cmdletar som används antingen AzureRM
eller Azure
som ett substantivprefix. Az förenklar och normaliserar cmdlet-namn så att Az används som cmdlet-substantivprefix för alla cmdletar. Till exempel:
Get-AzureRMVM
Get-AzureKeyVaultSecret
Har ändrats till:
Get-AzVM
Get-AzKeyVaultSecret
För att göra övergången till de nya cmdlet-namnen enklare introduceras två nya cmdletar, Enable-AzureRmAlias och Disable-AzureRmAlias. Enable-AzureRmAlias
skapar alias för de äldre cmdlet-namnen i AzureRM till de nyare cmdlet-namnen i Az. Med argumentet -Scope
med Enable-AzureRmAlias
kan du välja var alias ska aktiveras.
Till exempel kan följande skript i AzureRM:
#Requires -Modules AzureRM.Storage
Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob
Kan köras med minimala ändringar med Enable-AzureRmAlias
:
#Requires -Modules Az.Storage
Enable-AzureRmAlias -Scope Process
Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob
När Enable-AzureRmAlias -Scope CurrentUser
körs kan alias aktiveras för alla PowerShell-sessioner som du öppnar, så när denna cmdlet har körts behöver ett skript som detta inte ändras alls:
Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob
All information om användningen av alias-cmdletar finns i referensmaterialet för Enable-AzureRmAlias.
När du är redo att inaktivera alias tar Disable-AzureRmAlias
bort skapade alias. All information finns i referensmaterialet till Disable-AzureRmAlias.
Viktigt!
När du inaktiverar alias ska du se till att de är inaktiverade för alla omfång som har aktiverade alias.
Ändringar av modulnamn
Modulnamnen har ändrats från AzureRM.*
till Az.*
, förutom följande moduler:
AzureRM-modul | Az-modul |
---|---|
Azure.Storage | Az.Storage |
Azure.AnalysisServices | Az.AnalysisServices |
AzureRM.Profile | Az.Accounts |
AzureRM.Insights | Az.Monitor |
AzureRM.DataFactories | Az.DataFactory |
AzureRM.DataFactoryV2 | Az.DataFactory |
AzureRM.RecoveryServices | Az.RecoveryServices |
AzureRM.RecoveryServices | Az.RecoveryServices |
AzureRM.Tags | Az.Resources |
AzureRM.MachineLearningCompute | Az.MachineLearning |
AzureRM.UsageAggregates | Az.Billing |
AzureRM.Consumption | Az.Billing |
Ändringarna i modulnamnen innebär att alla skript som använder #Requires
eller Import-Module
för att läsa in specifika moduler måste ändras så att de använder den nya modulen i stället. För moduler där cmdletsuffixet inte har ändrats innebär det att även om modulnamnet har ändrats har suffixet som anger åtgärdsutrymmet inte det.
Migrera instruktioner av typen #Requires och Import-Module
Skript som använder #Requires
eller Import-Module
för att deklarera beroende av AzureRM-moduler måste uppdateras så att de nya modulnamnen används. Till exempel:
#Requires -Module AzureRM.Compute
Ska ändras till:
#Requires -Module Az.Compute
För Import-Module
:
Import-Module -Name AzureRM.Compute
Ska ändras till:
Import-Module -Name Az.Compute
Migrera fullständigt kvalificerade cmdlet-anrop
Skript som använder modulkvalificerade cmdlet-anrop som:
AzureRM.Compute\Get-AzureRmVM
Måste ändras så att de nya modul- och cmdlet-namnen används
Az.Compute\Get-AzVM
Migrera modulmanifestberoenden
För moduler som uttrycker beroenden av AzureRM-moduler via en modulmanifestfil (.psd1) behöver modulnamnen uppdateras i avsnittet RequiredModules
:
RequiredModules = @(@{ModuleName="AzureRM.Profile"; ModuleVersion="5.8.2"})
Måste ändras till:
RequiredModules = @(@{ModuleName="Az.Profile"; ModuleVersion="1.0.0"})
Borttagna moduler
Följande moduler har tagits bort:
AzureRM.Backup
AzureRM.Compute.ManagedService
AzureRM.Scheduler
Verktygen för de här tjänsterna stöds inte längre aktivt. Kunderna rekommenderas att övergå till alternativa tjänster så snart som möjligt.
Windows PowerShell 5.1 och .NET 4.7.2
Om Az ska användas med PowerShell 5.1 för Windows måste .NET Framework 4.7.2 vara installerat. För PowerShell Core 6.x och senare krävs inte .NET Framework.
Tillfällig borttagning av användarinloggning med PSCredential
På grund av ändringar i autentiseringsflödet för .NET Standard tar vi tillfälligt bort användarinloggning med PSCredential. Funktionen återintroduceras i version 1/15/2019/ av Windows PowerShell 5.1 för Windows. Det här diskuteras mer ingående i det här GitHub-ärendet.
Inloggning med standardenhetskod i stället för med webbläsarfråga
På grund av ändringar i autentiseringsflödet för .NET Standard använder vi enhetsinloggning som standardinloggningsflöde under interaktiv inloggning. Webbläsarbaserad webbinloggning återintroduceras som standardfunktion i version 1/15/2019 av PowerShell 5.1 för Windows. Då kan användarna välja enhetsinloggning med hjälp av en växlingsparameter.
Icke-bakåtkompatibla ändringar
I det här avsnittet beskriver vi icke-bakåtkompatibla ändringar för enskilda moduler och cmdletar.
Az.ApiManagement (tidigare AzureRM.ApiManagement)
- Följande cmdletar har tagits bort:
- New-AzureRmApiManagementHostnameConfiguration
- Set-AzureRmApiManagementHostnames
- Update-AzureRmApiManagementDeployment
- Import-AzureRmApiManagementHostnameCertificate
- Använd istället cmdleten Set-AzApiManagement för att ställa dessa egenskaper
- Följande egenskaper har tagits bort:
- Egenskapen
PortalHostnameConfiguration
,ProxyHostnameConfiguration
,ManagementHostnameConfiguration
ochScmHostnameConfiguration
av typenPsApiManagementHostnameConfiguration
har tagits bort frånPsApiManagementContext
. Använd i ställetPortalCustomHostnameConfiguration
,ProxyCustomHostnameConfiguration
,ManagementCustomHostnameConfiguration
ochScmCustomHostnameConfiguration
av typenPsApiManagementCustomHostNameConfiguration
. - Egenskapen
StaticIPs
har tagits bort från PsApiManagementContext. Egenskapen har delats upp iPublicIPAddresses
ochPrivateIPAddresses
. - Den nödvändiga egenskapen
Location
har tagits bort från cmdleten New-AzureApiManagementVirtualNetwork.
- Egenskapen
Az.Billing (tidigare AzureRM.Billing, AzureRM.Consumption och AzureRM.UsageAggregates)
- Parametern
InvoiceName
har tagits bort från cmdletenGet-AzConsumptionUsageDetail
. Skripten behöver nu använda andra identitetsparametrar för fakturan.
Az.CognitiveServices (tidigare AzureRM.CognitiveServices)
- Parameteruppsättningen
GetSkusWithAccountParamSetName
har tagits bort från cmdletenGet-AzCognitiveServicesAccountSkus
. Du måste hämta SKU:er efter typ och plats i stället för att använda ResourceGroupName och Account Name.
Az.Compute (tidigare AzureRM.Compute)
IdentityIds
tas bort från egenskapenIdentity
i objektenPSVirtualMachine
ochPSVirtualMachineScaleSet
Skripten bör nu inte längre använda värdet för det här fältet för att fatta bearbetningsbeslut.- Typ av
InstanceView
-egenskap förPSVirtualMachineScaleSetVM
-objekt ändras frånVirtualMachineInstanceView
tillVirtualMachineScaleSetVMInstanceView
- Egenskaperna
AutoOSUpgradePolicy
ochAutomaticOSUpgrade
tas bort från egenskapenUpgradePolicy
- Typ av
Sku
-egenskap iPSSnapshotUpdate
-objekt ändras frånDiskSku
tillSnapshotSku
VmScaleSetVMParameterSet
tas bort från cmdletenAdd-AzVMDataDisk
, och du kan inte längre lägga till en datadisk individuellt till en virtuell ScaleSet-dator.
Az.DataFactory (tidigare AzureRM.DataFactories och AzureRM.DataFactoryV2)
- Parametern
GatewayName
har blivit obligatorisk i cmdletenNew-AzDataFactoryEncryptValue
- Cmdleten
New-AzDataFactoryGatewayKey
har tagits bort - Parametern
LinkedServiceName
har tagits bort från cmdletenGet-AzDataFactoryV2ActivityRun
Skripten ska inte längre använda värdet för det här fältet för att fatta bearbetningsbeslut.
Az.DataLakeAnalytics (tidigare AzureRM.DataLakeAnalytics)
- Följande inaktuella cmdletar har tagits bort:
New-AzDataLakeAnalyticsCatalogSecret
,Remove-AzDataLakeAnalyticsCatalogSecret
ochSet-AzDataLakeAnalyticsCatalogSecret
Az.DataLakeStore (tidigare AzureRM.DataLakeStore)
I följande cmdletar har parametern
Encoding
ändrats från typenFileSystemCmdletProviderEncoding
tillSystem.Text.Encoding
. Den här ändringen tar bort kodningsvärdenaString
ochOem
. Övriga tidigare kodningsvärden kvarstår.- New-AzureRmDataLakeStoreItem
- Add-AzureRmDataLakeStoreItemContent
- Get-AzureRmDataLakeStoreItemContent
Det inaktuella egenskapsaliaset
Tags
har tagits bort från cmdletarnaNew-AzDataLakeStoreAccount
ochSet-AzDataLakeStoreAccount
Skript som använder
New-AzureRMDataLakeStoreAccount -Tags @{TagName="TagValue"}
Ska ändras till
New-AzDataLakeStoreAccount -Tag @{TagName="TagValue"}
De inaktuella egenskaperna
Identity
,EncryptionState
,EncryptionProvisioningState
,EncryptionConfig
,FirewallState
,FirewallRules
,VirtualNetworkRules
,TrustedIdProviderState
,TrustedIdProviders
,DefaultGroup
,NewTier
,CurrentTier
,FirewallAllowAzureIps
har tagits bort frånPSDataLakeStoreAccountBasic
-objekt. Alla skript som använder denPSDatalakeStoreAccount
som returnerades frånGet-AzDataLakeStoreAccount
ska inte längre referera till dessa egenskaper.
Az.KeyVault (tidigare AzureRM.KeyVault)
- Egenskapen
PurgeDisabled
har tagits bort frånPSKeyVaultKeyAttributes
-,PSKeyVaultKeyIdentityItem
- ochPSKeyVaultSecretAttributes
-objekt Skript ska inte längre referera till egenskapenPurgeDisabled
för att fatta bearbetningsbeslut.
Az.Media (tidigare AzureRM.Media)
Tog bort inaktuellt egenskapsalias
Tags
från skript för cmdletenNew-AzMediaService
med hjälp avNew-AzureRMMediaService -Tags @{TagName="TagValue"}
Ska ändras till
New-AzMediaService -Tag @{TagName="TagValue"}
Az.Monitor (tidigare AzureRM.Insights)
Tog bort pluralnamnet
Categories
och parameternTimegrains
och ersatte med singularparameternamn från cmdlet-skript förSet-AzDiagnosticSetting
med hjälp avSet-AzureRmDiagnosticSetting -Timegrains PT1M -Categories Category1, Category2
Ska ändras till
Set-AzDiagnosticSetting -Timegrain PT1M -Category Category1, Category2
Az.Network (tidigare AzureRM.Network)
- Tog bort den inaktuella parametern
ResourceId
från cmdletenGet-AzServiceEndpointPolicyDefinition
- Tog bort den inaktuella egenskapen
EnableVmProtection
från objektetPSVirtualNetwork
- Tog bort den inaktuella cmdleten
Set-AzVirtualNetworkGatewayVpnClientConfig
Skript bör inte längre fatta bearbetningsbeslut baserat på värdena för dessa fält.
Az.OperationalInsights (tidigare AzureRM.OperationalInsights)
Standardparameteruppsättningen för
Get-AzOperationalInsightsDataSource
har tagits bort ochByWorkspaceNameByKind
är nu standardparameteruppsättningSkript som listar datakällor med hjälp av
Get-AzureRmOperationalInsightsDataSource
ska ändras så att de anger en typ
Get-AzOperationalInsightsDataSource -Kind AzureActivityLog
Az.RecoveryServices (tidigare AzureRM.RecoveryServices, AzureRM.RecoveryServices.Backup och AzureRM.RecoveryServices.SiteRecovery)
- Parametern
Encryption
har tagits bort från cmdletenNew/Set-AzRecoveryServicesAsrPolicy
- Parametern
TargetStorageAccountName
är nu obligatorisk för hanterade diskåterställningar i cmdletenRestore-AzRecoveryServicesBackupItem
- Tog bort parametrarna
StorageAccountName
ochStorageAccountResourceGroupName
i cmdletenRestore-AzRecoveryServicesBackupItem
- Tog bort parametern
Name
i cmdletenGet-AzRecoveryServicesBackupContainer
Az.Resources (tidigare AzureRM.Resources)
Parametern
Sku
har tagits bort från cmdletenNew/Set-AzPolicyAssignment
Parametern
Password
har tagits bort från cmdletenNew-AzADServicePrincipal
ochNew-AzADSpCredential
Lösenord genereras automatiskt och skript som tillhandahöll lösenordet:New-AzAdSpCredential -ObjectId 1f99cf81-0146-4f4e-beae-2007d0668476 -Password $secPassword
Bör ändras så att de hämtar lösenordet från utdata:
$credential = New-AzAdSpCredential -ObjectId 1f99cf81-0146-4f4e-beae-2007d0668476 $secPassword = $credential.Secret
Az.ServiceFabric (tidigare AzureRM.ServiceFabric)
- Följande cmdlet-returtyper har ändrats:
- Egenskapen
ServiceTypeHealthPolicies
av typenApplicationHealthPolicy
har tagits bort. - Egenskapen
ApplicationHealthPolicies
av typenClusterUpgradeDeltaHealthPolicy
har tagits bort. - Egenskapen
OverrideUserUpgradePolicy
av typenClusterUpgradePolicy
har tagits bort. - Dessa ändringar påverkar följande cmdletar:
- Add-AzServiceFabricClientCertificate
- Add-AzServiceFabricClusterCertificate
- Add-AzServiceFabricNode
- Add-AzServiceFabricNodeType
- Get-AzServiceFabricCluster
- Remove-AzServiceFabricClientCertificate
- Remove-AzServiceFabricClusterCertificate
- Remove-AzServiceFabricNode
- Remove-AzServiceFabricNodeType
- Remove-AzServiceFabricSetting
- Set-AzServiceFabricSetting
- Set-AzServiceFabricUpgradeType
- Update-AzServiceFabricDurability
- Update-AzServiceFabricReliability
- Egenskapen
Az.Sql (tidigare AzureRM.Sql)
- Tog bort parametrarna
State
ochResourceId
från cmdletenSet-AzSqlDatabaseBackupLongTermRetentionPolicy
- Följande inaktuella cmdletar har tagits bort:
Get/Set-AzSqlServerBackupLongTermRetentionVault
,Get/Start/Stop-AzSqlServerUpgrade
,Get/Set-AzSqlDatabaseAuditingPolicy
,Get/Set-AzSqlServerAuditingPolicy
,Remove-AzSqlDatabaseAuditing
,Remove-AzSqlServerAuditing
- Tog bort den inaktuella parametern
Current
från cmdletenGet-AzSqlDatabaseBackupLongTermRetentionPolicy
- Tog bort den inaktuella parametern
DatabaseName
från cmdletenGet-AzSqlServerServiceObjective
- Tog bort den inaktuella parametern
PrivilegedLogin
från cmdletenSet-AzSqlDatabaseDataMaskingPolicy
Az.Storage (tidigare Azure.Storage och AzureRM.Storage)
- Standardparameteruppsättningen har ändrats till
OAuthParameterSet
för att det ska gå att skapa en Oauth-lagringskontext endast med namnet på lagringskontot- Exempel:
$ctx = New-AzureStorageContext -StorageAccountName $accountName
- Exempel:
- Parametern
Location
har blivit obligatorisk i cmdletenGet-AzStorageUsage
- Storage-API-metoderna använder nu TAP (uppgiftsbaserat asynkront mönster) i stället för synkrona API-anrop. Följande exempel visar de nya asynkrona kommandona:
Blobögonblicksbild
AzureRM:
$b = Get-AzureStorageBlob -Container $containerName -Blob $blobName -Context $ctx
$b.ICloudBlob.Snapshot()
Az:
$b = Get-AzStorageBlob -Container $containerName -Blob $blobName -Context $ctx
$task = $b.ICloudBlob.SnapshotAsync()
$task.Wait()
$snapshot = $task.Result
Dela ögonblicksbild
AzureRM:
$Share = Get-AzureStorageShare -Name $containerName -Context $ctx
$snapshot = $Share.Snapshot()
Az:
$Share = Get-AzStorageShare -Name $containerName -Context $ctx
$task = $Share.SnapshotAsync()
$task.Wait()
$snapshot = $task.Result
Ångra borttagning av mjukborttagen blob
AzureRM:
$b = Get-AzureStorageBlob -Container $containerName -Blob $blobName -IncludeDeleted -Context $ctx
$b.ICloudBlob.Undelete()
Az:
$b = Get-AzStorageBlob -Container $containerName -Blob $blobName -IncludeDeleted -Context $ctx
$task = $b.ICloudBlob.UndeleteAsync()
$task.Wait()
Ange blobnivå
AzureRM:
$blockBlob = Get-AzureStorageBlob -Container $containerName -Blob $blockBlobName -Context $ctx
$blockBlob.ICloudBlob.SetStandardBlobTier("hot")
$pageBlob = Get-AzureStorageBlob -Container $containerName -Blob $pageBlobName -Context $ctx
$pageBlob.ICloudBlob.SetPremiumBlobTier("P4")
Az:
$blockBlob = Get-AzStorageBlob -Container $containerName -Blob $blockBlobName -Context $ctx
$task = $blockBlob.ICloudBlob.SetStandardBlobTierAsync("hot")
$task.Wait()
$pageBlob = Get-AzStorageBlob -Container $containerName -Blob $pageBlobName -Context $ctx
$task = $pageBlob.ICloudBlob.SetPremiumBlobTierAsync("P4")
$task.Wait()
Az.Websites (tidigare AzureRM.Websites)
- Inaktuella egenskaper har tagits bort från
PSAppServicePlan
-,PSCertificate
-,PSCloningInfo
- ochPSSite
-objekten
Azure PowerShell
Feedback
https://aka.ms/ContentUserFeedback.
Kommer snart: Under hela 2024 kommer vi att fasa ut GitHub-problem som feedbackmekanism för innehåll och ersätta det med ett nytt feedbacksystem. Mer information finns i:Skicka och visa feedback för