你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
Az 7.0.0 迁移指南
Az.Accounts
上下文和帐户 cmdlet
以下 cmdlet 的输出已更改:
- Get-AzContext
- Remove-AzContext
- Rename-AzContext
- Select-AzContext
- Connect-AzAccount
- Disconnect-AzAccount
- Import-AzContext
- Save-AzContext
删除了 PSAzureRmAccount
中的 ServicePrincipalSecret
和 CertificatePassword
之前
PS C:\> $cred = Get-Credential
PS C:\> Connect-AzAccount -ServicePrincipal -Tenant 54826b22-xxxx-xxxx-xxxx-xxxxxxxxxxxxx -Credential $cred
PS C:\> (Get-AzContext).Account.ExtendedProperties
Key Value
--- -----
CertificatePath C:\certificate.pfx
CertificatePassword password****
Tenants 54826b22-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
ServicePrincipalSecret 7QK7Q********************************
Subscriptions 0b1f6471-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
调整后的文本
PS C:\> $cred = Get-Credential
PS C:\> Connect-AzAccount -ServicePrincipal -Tenant 54826b22-xxxx-xxxx-xxxx-xxxxxxxxxxxxx -Credential $cred
PS C:\> (Get-AzContext).Account.ExtendedProperties
Key Value
--- -----
CertificatePath C:\certificate.pfx
Tenants 54826b22-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Subscriptions 0b1f6471-xxxx-xxxx-xxxx-xxxxxxxxxxxxx
Az.Aks
Get-AzAksVersion
输出中的 Upgrades
属性已更改为 Upgrade
。
之前
PS C:\> (Get-AzAksVersion -location eastus).Upgrades
OrchestratorType OrchestratorVersion IsPreview
---------------- ------------------- ---------
Kubernetes 1.19.13
Kubernetes 1.20.7
Kubernetes 1.20.9
Kubernetes 1.20.7
Kubernetes 1.20.9
Kubernetes 1.20.9
Kubernetes 1.21.1
Kubernetes 1.21.2
Kubernetes 1.21.1
Kubernetes 1.21.2
Kubernetes 1.21.2
Kubernetes 1.22.1 True
Kubernetes 1.22.2 True
Kubernetes 1.22.1 True
Kubernetes 1.22.2 True
Kubernetes 1.22.2 True
之后
PS C:\> (Get-AzAksVersion -location eastus).Upgrade
OrchestratorType OrchestratorVersion IsPreview
---------------- ------------------- ---------
Kubernetes 1.19.13
Kubernetes 1.20.7
Kubernetes 1.20.9
Kubernetes 1.20.7
Kubernetes 1.20.9
Kubernetes 1.20.9
Kubernetes 1.21.1
Kubernetes 1.21.2
Kubernetes 1.21.1
Kubernetes 1.21.2
Kubernetes 1.21.2
Kubernetes 1.22.1 True
Kubernetes 1.22.2 True
Kubernetes 1.22.1 True
Kubernetes 1.22.2 True
Kubernetes 1.22.2 True
Az.ContainerInstance
New-AzContainerGroup
删除了参数 NetworkProfileId,添加了 SubnetId 作为替代项
之前
PS C:\> $containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -OsType Linux -NetworkProfileId "/subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}"
PS C:\> $containerGroup.NetworkProfileId
/subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}
调整后的文本
PS C:\> $container = New-AzContainerInstanceObject -Name test-container -Image nginx
PS C:\> $containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -OsType Linux -RestartPolicy "Never" -IpAddressType 'Private' -SubnetId @{"Id"="/subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}"; "Name"="subnet"}
PS C:\> $containerGroup.SubnetId | fl
Id : /subscriptions/{subId}/resourceGroups/{rg}/providers/Microsoft.Network/virtualNetworks/{vnetName}/subnets/{subnetName}
Name : subnet
Invoke-AzContainerInstanceCommand
通过后端连接 websocket 将命令执行结果显示为了 cmdlet 输出
之前
PS C:\> $websocket = Invoke-AzContainerInstanceCommand -ContainerGroupName test-cg -ContainerName test-container -ResourceGroupName test-rg -Command "echo hello" -TerminalSizeCol 12 -TerminalSizeRow 12
PS C:\> $websocket
Password WebSocketUri
-------- ------------
****************** wss://bridge-linux-xx.eastus.management.azurecontainer.io/exec/caas-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx/bridge-xxxxxxxxxxxxxxx?rows=12&cols=12api-version=2018-02-01-preview
User needs connect websocket using password to fetch command execution result
调整后的文本
PS C:\> Invoke-AzContainerInstanceCommand -ContainerGroupName test-cg -ContainerName test-container -ResourceGroupName test-rg -Command "echo hello"
hello
Az.Functions
Update-AzFunctionApp, Update-AzFunctionAppPlan
Update-AzFunctionApp
将提示进行确认。 可以通过指定 -Force
来绕过此行为。
之前
Update-AzFunctionApp -Name MyUniqueFunctionAppName -ResourceGroupName MyResourceGroupName -PlanName NewPlanName
调整后的文本
Update-AzFunctionApp -Name MyUniqueFunctionAppName -ResourceGroupName MyResourceGroupName -PlanName NewPlanName -Force
New-AzFunctionApp
如果在执行 New-AzFunctionApp
cmdlet 时没有指定 FunctionsVersion
参数,那么默认的 Functions 版本将设为 4
。
There is no change to the usage.
Remove-AzFunctionApp
如果这是应用服务计划中的最后一个应用,则不会删除该计划。 在此版本之前,应用计划也将被删除。
There is no change to the usage.
Az.HDInsight
New-AzHDInsightCluster
将参数“OSType”的类型从 Microsoft.Azure.Management.HDInsight.Models.OSType
更改为了 System.string
There is no change to the usage.
New-AzHDInsightCluster, New-AzHDInsightClusterConfig
将参数“ClusterTier”的类型从 Microsoft.Azure.Management.HDInsight.Models.ClusterTier
更改为了 System.string
There is no change to the usage.
Set-AzHDInsightClusterDiskEncryptionKey, Set- AzHDInsightClusterSize
输出类型已从 'Microsoft.Azure.Management.HDInsight.Models.Cluster' 更改为 'Microsoft.Azure.Commands.HDInsight.Models.AzureHDInsightCluster'。
All properties remain the same, so there is no change to the usage.
Cluster cmdlets
属性 'AssignedIdentity' 的类型已从 'Microsoft.Azure.Management.HDInsight.Models.ClusterIdentity' 更改为 'Microsoft.Azure.Commands.HDInsight.Models.AzureHDInsightClusterIdentity'。
All properties remain the same, so there is no change to the usage.
Get-AzHDInsightProperties
输出 'property VmSizes' 的泛型类型已从 System.Collections.Generic.IDictionary2[System.String,Microsoft.Azure.Commands.HDInsight.Models.Management.AzureHDInsightVmSizesCapability]
更改为 System.Collections.Generic.IList1[System.String]
。
之前
PS C:\> $result = Get-AzHDInsightProperty -Location "South Central us"
PS C:\> $availableVmSizes = $result.VmSizes['iaas'].AvailableVmSizes
完成
PS C:\> $result = Get-AzHDInsightProperty -Location "South Central us"
PS C:\> $availableVmSizes = $result.VmSizes
Az.KeyVault
New-AzKeyVaultRoleDefinition, Get-AzKeyVaultRoleDefinition
PSKeyVaultPermission
模型中的以下属性已重命名:
- %>
- %>
- %>
- %>
之前
PS C:\> $backupRole = Get-AzKeyVaultRoleDefinition -HsmName myHsm -RoleDefinitionName "Managed HSM Backup User"
PS C:\> $backupRole.Permissions
AllowedActions DeniedActions AllowedDataActions DeniedDataActions
-------------- ------------- ------------------ -----------------
0 action(s) 0 action(s) 3 action(s) 0 action(s)
PS C:\> $backupRole.Permissions.AllowedDataActions
Microsoft.KeyVault/managedHsm/backup/start/action
Microsoft.KeyVault/managedHsm/backup/status/action
Microsoft.KeyVault/managedHsm/keys/backup/action
完成
PS C:\> $backupRole = Get-AzKeyVaultRoleDefinition -HsmName myHsm -RoleDefinitionName "Managed HSM Backup User"
PS C:\> $backupRole.Permissions
Actions NotActions DataActions NotDataActions
------- ---------- ----------- --------------
0 action(s) 0 action(s) 3 action(s) 0 action(s)
PS C:\> $backupRole.Permissions.DataActions
Microsoft.KeyVault/managedHsm/backup/start/action
Microsoft.KeyVault/managedHsm/backup/status/action
Microsoft.KeyVault/managedHsm/keys/backup/action
Az.ManagedServices
New-AzManagedServicesDefinition
-DisplayName
参数已删除。
之前
PS C:\> New-AzManagedServicesDefinition -DisplayName "MyTestDefinition" -ManagedByTenantId 00001111-aaaa-2222-bbbb-3333cccc4444 -RoleDefinitionId acdd72a7-3385-48ef-bd42-f606fba81ae7 -PrincipalId 714160ec-87d5-42bb-8b17-287c0dd7417d
之后
PS C:\> $permantAuth = New-AzManagedServicesAuthorizationObject -PrincipalId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -RoleDefinitionId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -PrincipalIdDisplayName "Test user" -DelegatedRoleDefinitionId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx","xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
PS C:\> New-AzManagedServicesDefinition -Name xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx -RegistrationDefinitionName "Test definition" -ManagedByTenantId "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx" -Authorization $permantAuth -Description "Test definition desc" -Scope "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
Az.Monitor
Get-AzLog
属性 'EventName'、'Category'、'ResourceProviderName'、'OperationName'、'Status'、'SubStatus 的类型已从 Microsoft.Azure.Management.Monitor.Models.LocalizableString
更改为 System.String
之前
PS C:\> $log = Get-AzLog -MaxRecord 1
PS C:\> $eventName = $log.EventName.LocalizedValue
PS C:\> $category = $log.Category.LocalizedValue
PS C:\> $resourceProviderName = $log.ResourceProviderName.LocalizedValue
PS C:\> $operationName = $log.OperationName.LocalizedValue
PS C:\> $status = $log.Status.LocalizedValue
PS C:\> $subStatus = $log.SubStatus.LocalizedValue
调整后的文本
PS C:\> $log = Get-AzLog -MaxRecord 1
PS C:\> $eventName = $log.EventName
PS C:\> $category = $log.Category
PS C:\> $resourceProviderName = $log.ResourceProviderName
PS C:\> $operationName = $log.OperationName
PS C:\> $status = $log.Status
PS C:\> $subStatus = $log.SubStatus
Get-AzMetric,Get-AzMetricDefinition
属性 'Unit' 的类型已更改为 System.String
There is no change to the usage.
New-AzMetricAlertRuleV2Criteria
属性 'TimeAggregation' 的类型已更改为 System.String
There is no change to the usage.
Az.OperationalInsights
Get-AzOperationalInsightsCluster
将 "list"设为默认参数集。
之前
There is no default parameter set.
调整后的文本
Default parameter set is now "list", when providing resource group name - return all clusters for the given resource group.
Update-AzOperationalInsightsCluster
将 "UpdateByNameParameterSet" 设为默认参数集。
之前
There is no default parameter set.
之后
Default parameter set is now "UpdateByNameParameterSet".
Az.RecoveryServices
Get-AzRecoveryServicesBackupContainer
将 BackupManagementType 从 MARS 更改为了 MAB。 功能保持不变,这是为了在 cmdlet 之间实现一致性。
之前
$containers = Get-AzRecoveryServicesBackupContainer -ContainerType Windows -BackupManagementType MARS -VaultId $vault.ID
调整后的文本
$cont = Get-AzRecoveryServicesBackupContainer -ContainerType Windows -BackupManagementType MAB -VaultId $vault.ID
Get-AzRecoveryServicesBackupItem
将 BackupManagementType 从 MARS 更改为了 MAB。 功能保持不变,这是为了在 cmdlet 之间实现一致性
之前
Get-AzRecoveryServicesBackupItem -BackupManagementType MARS -VaultId $vault.ID -WorkloadType FileFolder
调整后的文本
Get-AzRecoveryServicesBackupItem -BackupManagementType MAB -VaultId $vault.ID -WorkloadType FileFolder
Get-AzRecoveryServicesBackupJob
将 BackupManagementType 从 MARS 更改为了 MAB。 功能保持不变,这是为了在 cmdlet 之间实现一致性
之前
Get-AzRecoveryServicesBackupJob -BackupManagementType MARS -VaultId $vault.ID
调整后的文本
Get-AzRecoveryServicesBackupJob -BackupManagementType MAB -VaultId $vault.ID
Az.Resources
AzAD cmdlets
请参阅有关 Active Directory cmdlet 的迁移指南。
PolicyAssignment cmdlets
类型为 'Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.Policy.PsPolicyAssignment' 的属性 'Identity' 的类型已从 'System.Management.Automation.PSObject' 更改为 'Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.Policy.PsPolicyIdentity'。
之前
PS C:\> $v = Get-AzPolicyAssignment -Id $someId
PS C:\> Write-Host $v.type, $v.principalId, $v.tenantId
之后
PS C:\> $v = Get-AzPolicyAssignment -Id $someId
PS C:\> Write-Host $v.IdentityType, $v.PrincipalId, $v.TenantId, $v.UserAssignedIdentities
Az.Storage
Get-AzRmStorageShare
参数 "Name" 已从参数集 "ShareResourceId" 中删除,因为可以从资源 ID 推断出名称。
之前
$StorageShare = Get-AzRmStorageShare -ResourceId "/subscriptions/..." -Name "MyStorageShare"
之后
$StorageShare = Get-AzRmStorageShare -ResourceId "/subscriptions/..."