Guida alla migrazione per Az 7.0.0
Az.Accounts
Cmdlet di contesto e account
L'output dei cmdlet seguenti è stato modificato:
- Get-AzContext
- Remove-AzContext
- Rename-AzContext
- Select-AzContext
- Connect-AzAccount
- Disconnect-AzAccount
- Import-AzContext
- Save-AzContext
Rimozione di ServicePrincipalSecret
e CertificatePassword
in PSAzureRmAccount
Prima
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
Dopo
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
La proprietà Upgrades
nell'output è stata modificata in Upgrade
.
Prima
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
Dopo
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
Rimozione del parametro NetworkProfileId, aggiunta di SubnetId come alternativa
Prima
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}
Dopo
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
Risultato dell'esecuzione del comando visualizzato come output del cmdlet connettendo websocket nel back-end
Prima
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
Dopo
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
richiederà la conferma. Questo comportamento può essere ignorato specificando -Force
.
Prima
Update-AzFunctionApp -Name MyUniqueFunctionAppName -ResourceGroupName MyResourceGroupName -PlanName NewPlanName
Dopo
Update-AzFunctionApp -Name MyUniqueFunctionAppName -ResourceGroupName MyResourceGroupName -PlanName NewPlanName -Force
New-AzFunctionApp
Se FunctionsVersion
parametro non viene specificato durante l'esecuzione del cmdlet New-AzFunctionApp
, la versione predefinita di Funzioni verrà impostata su 4
.
There is no change to the usage.
Remove-AzFunctionApp
Se si tratta dell'ultima app nel piano di servizio app, il piano non verrà eliminato. Prima di questa versione, verrà eliminato anche il piano dell'app.
There is no change to the usage.
Az.HDInsight
New-AzHDInsightCluster
Modifica del tipo di parametro "OSType" da Microsoft.Azure.Management.HDInsight.Models.OSType
a System.string
There is no change to the usage.
New-AzHDInsightCluster, New-AzHDInsightClusterConfig
Modifica del tipo di parametro "ClusterTier" da Microsoft.Azure.Management.HDInsight.Models.ClusterTier
a System.string
There is no change to the usage.
Set-AzHDInsightClusterDiskEncryptionKey, Set- AzHDInsightClusterSize
Il tipo di output è stato modificato da "Microsoft.Azure.Management.HDInsight.Models.Cluster" a "Microsoft.Azure.Commands.HDInsight.Models.AzureHDInsightCluster".
All properties remain the same, so there is no change to the usage.
Cluster cmdlets
Il tipo di proprietà 'AssignedIdentity' è stato modificato da 'Microsoft.Azure.Management.HDInsight.Models.ClusterIdentity' a 'Microsoft.Azure.Commands.HDInsight.Models.AzureHDInsightClusterIdentity'.
All properties remain the same, so there is no change to the usage.
Get-AzHDInsightProperties
Il tipo generico per l'output 'property VmSizes' è stato modificato da System.Collections.Generic.IDictionary2[System.String,Microsoft.Azure.Commands.HDInsight.Models.Management.AzureHDInsightVmSizesCapability]
a System.Collections.Generic.IList1[System.String]
.
Prima
PS C:\> $result = Get-AzHDInsightProperty -Location "South Central us"
PS C:\> $availableVmSizes = $result.VmSizes['iaas'].AvailableVmSizes
Dopo
PS C:\> $result = Get-AzHDInsightProperty -Location "South Central us"
PS C:\> $availableVmSizes = $result.VmSizes
Az.KeyVault
New-AzKeyVaultRoleDefinition, Get-AzKeyVaultRoleDefinition
Le proprietà seguenti nel modello di PSKeyVaultPermission
vengono rinominate:
-
AllowedActions
->Actions
-
DeniedActions
->NotActions
-
AllowedDataActions
->DataActions
-
DeniedDataActions
->NotDataActions
Prima
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
Dopo
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
Il parametro -DisplayName
è stato rimosso.
Prima
PS C:\> New-AzManagedServicesDefinition -DisplayName "MyTestDefinition" -ManagedByTenantId 00001111-aaaa-2222-bbbb-3333cccc4444 -RoleDefinitionId acdd72a7-3385-48ef-bd42-f606fba81ae7 -PrincipalId 714160ec-87d5-42bb-8b17-287c0dd7417d
Dopo
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
Il tipo delle proprietà 'EventName', 'Category', 'ResourceProviderName', 'OperationName', 'Status', 'SubStatus' è cambiato da Microsoft.Azure.Management.Monitor.Models.LocalizableString
a System.String
Prima
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
Dopo
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
Il tipo di proprietà 'Unit' è stato modificato in System.String
There is no change to the usage.
New-AzMetricAlertRuleV2Criteria
Il tipo di proprietà 'TimeAggregation' è stato modificato in System.String
There is no change to the usage.
Az.OperationalInsights
Get-AzOperationalInsightsCluster
"Reso 'list' il set di parametri predefinito."
Prima
There is no default parameter set.
Dopo
Default parameter set is now "list", when providing resource group name - return all clusters for the given resource group.
Update-AzOperationalInsightsCluster
Ha reso "UpdateByNameParameterSet" il set di parametri predefinito.
Prima
There is no default parameter set.
Dopo
Default parameter set is now "UpdateByNameParameterSet".
Az.RecoveryServices
Get-AzRecoveryServicesBackupContainer
Modificato il BackupManagementType da MARS a MAB. La funzionalità rimane invariata, in modo da portare la coerenza tra i cmdlet.
Prima
$containers = Get-AzRecoveryServicesBackupContainer -ContainerType Windows -BackupManagementType MARS -VaultId $vault.ID
Dopo
$cont = Get-AzRecoveryServicesBackupContainer -ContainerType Windows -BackupManagementType MAB -VaultId $vault.ID
Get-AzRecoveryServicesBackupItem
Ha cambiato il BackupManagementType da MARS a MAB. La funzionalità rimane invariata, che consiste nel portare la coerenza tra i cmdlet
Prima
Get-AzRecoveryServicesBackupItem -BackupManagementType MARS -VaultId $vault.ID -WorkloadType FileFolder
Dopo
Get-AzRecoveryServicesBackupItem -BackupManagementType MAB -VaultId $vault.ID -WorkloadType FileFolder
Get-AzRecoveryServicesBackupJob
Cambiato il tipo di gestione del backup da MARS a MAB. La funzionalità rimane invariata, che consiste nel portare la coerenza tra i cmdlet
Prima
Get-AzRecoveryServicesBackupJob -BackupManagementType MARS -VaultId $vault.ID
Dopo
Get-AzRecoveryServicesBackupJob -BackupManagementType MAB -VaultId $vault.ID
Az.Resources
AzAD cmdlets
Vedere la guida alla migrazione dei cmdlet di Active Directory.
PolicyAssignment cmdlets
Il tipo di proprietà 'Identity' di tipo 'Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.Policy.PsPolicyAssignment' è stato modificato da 'System.Management.Automation.PSObject' a 'Microsoft.Azure.Commands.ResourceManager.Cmdlets.Implementation.Policy.PsPolicyIdentity'.
Prima
PS C:\> $v = Get-AzPolicyAssignment -Id $someId
PS C:\> Write-Host $v.type, $v.principalId, $v.tenantId
Dopo
PS C:\> $v = Get-AzPolicyAssignment -Id $someId
PS C:\> Write-Host $v.IdentityType, $v.PrincipalId, $v.TenantId, $v.UserAssignedIdentities
Az.Storage
Get-AzRmStorageShare
Il parametro "Name" è stato rimosso dal set di parametri "ShareResourceId", perché il nome può essere dedotto dall'ID risorsa.
Prima
$StorageShare = Get-AzRmStorageShare -ResourceId "/subscriptions/..." -Name "MyStorageShare"
Dopo
$StorageShare = Get-AzRmStorageShare -ResourceId "/subscriptions/..."