Guía de migración para Az 6.0.0
En este documento se describen los cambios entre las versiones 5.0.0 y 6.0.0 de Az.
- Guía de migración para Az 6.0.0
- versiones compatibles de PowerShell
- Az.Accounts
- Az.ContainerInstance
- Az.DesktopVirtualization
- Az.StreamAnalytics
- Az.RecoveryServices
- Az.Storage
- Az.ServiceFabric
Add-AzServiceFabricClusterCertificate
Get-AzServiceFabricManagedClusterService
New-AzServiceFabricManagedCluster
New-AzServiceFabricManagedClusterService
Remove-AzServiceFabricClusterCertificate
Remove-AzServiceFabricManagedClusterService
Set-AzServiceFabricManagedCluster
Set-AzServiceFabricManagedClusterService
Versiones compatibles de PowerShell
Debido a que CVE-2021-26701 Az 6 solo se admite en las siguientes plataformas:
- PowerShell 7.1: versión 7.1.3 o posterior
- PowerShell 7.0: versión 7.0.6 o posterior
- Windows PowerShell 5.1
Para más información, consulte el ciclo de vida de soporte técnico de Azure PowerShell
Az.Accounts
Connect-AzAccount
Se han quitado los parámetros obsoletos ManagedServiceHostName, ManagedServicePort y ManagedServiceSecret.
Antes
Connect-AzAccount -Identity -ManagedServiceSecret $secret
Después
#To use customized MSI endpoint, please set environment variable MSI_ENDPOINT, e.g. "http://localhost:50342/oauth2/token"; to use customized MSI secret, please set environment variable MSI_SECRET.
Connect-AzAccount -Identity
Az.ContainerInstance
New-AzContainerGroup
Ya no admite el parámetro Image
, RegistryCredential
, AzureFileVolumeShareName
, AzureFileVolumeAccountCredential
, AzureFileVolumeMountPath
, IdentityId
, AssignIdentity
, OsType
, Cpu
, MemoryInGB
, IpAddressType
, DnsNameLabel
, Port
, Command
, EnvironmentVariable
, RegistryServerDomain
y no se encontró ningún alias para el nombre del parámetro original.
Antes
PS C:\> New-AzContainerGroup -ResourceGroupName demo -Name mycontainer -Image nginx -OsType Linux -IpAddressType Public -Port @(8000)
ResourceGroupName : demo
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/mycontainer
Name : mycontainer
Type : Microsoft.ContainerInstance/containerGroups
Location : westus
Tags :
ProvisioningState : Creating
Containers : {mycontainer}
ImageRegistryCredentials :
RestartPolicy :
IpAddress : 13.88.10.240
Ports : {8000}
OsType : Linux
Volumes :
State : Running
Events : {}
Después
PS C:\> $port1 = New-AzContainerInstancePortObject -Port 8000 -Protocol TCP
PS C:\> $port2 = New-AzContainerInstancePortObject -Port 8001 -Protocol TCP
PS C:\> $container = New-AzContainerInstanceObject -Name test-container -Image nginx -RequestCpu 1 -RequestMemoryInGb 1.5 -Port @($port1, $port2)
PS C:\> $containerGroup = New-AzContainerGroup -ResourceGroupName test-rg -Name test-cg -Location eastus -Container $container -OsType Linux -RestartPolicy "Never" -IpAddressType Public
Location Name Type
-------- ---- ----
eastus test-cg Microsoft.ContainerInstance/containerGroups
Remove-AzContainerGroup
El cmdlet "Remove-AzContainerGroup" ya no admite el parámetro "ResourceId" y no se encontró ningún alias para el nombre del parámetro original.
Antes
PS C:\> Find-AzResource -ResourceGroupEquals MyResourceGroup -ResourceNameEquals MyContainer | Remove-AzContainerGroup
Después
PS C:\> Remove-AzContainerGroup -Name test-cg -ResourceGroupName test-rg
Location Name Type
-------- ---- ----
eastus test-cg Microsoft.ContainerInstance/containerGroups
Get-AzContainerGroup
El cmdlet "Get-AzContainerGroup" ya no admite el parámetro "ResourceId" y no se encontró ningún alias para el nombre del parámetro original.
Antes
PS C:\> Find-AzResource -ResourceGroupEquals demo -ResourceNameEquals mycontainer | Get-AzContainerGroup
ResourceGroupName : demo
Id : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/demo/providers/Microsoft.ContainerInstance/containerGroups/mycontainer
Name : mycontainer
Type : Microsoft.ContainerInstance/containerGroups
Location : westus
Tags :
ProvisioningState : Succeeded
Containers : {mycontainer}
ImageRegistryCredentials :
RestartPolicy :
IpAddress : 13.88.10.240
Ports : {8000}
OsType : Linux
Volumes :
State : Running
Events : {}
Después
PS C:\> Get-AzContainerGroup
Location Name Type
-------- ---- ----
eastus bez-cg1 Microsoft.ContainerInstance/containerGroups
eastus bez-cg2 Microsoft.ContainerInstance/containerGroups
Get-AzContainerInstanceLog
El cmdlet "Get-AzContainerInstanceLog" ya no admite el parámetro "ResourceId" y no se encontró ningún alias para el nombre del parámetro original. El cmdlet "Get-AzContainerInstanceLog" ya no admite el parámetro "Name" y no se encontró ningún alias para el nombre del parámetro original.
Antes
PS C:\> Get-AzContainerGroup -ResourceGroupName demo -Name mycontainer | Get-AzContainerInstanceLog
Log line 1.
Log line 2.
Log line 3.
Log line 4.
Después
PS C:\> Get-AzContainerInstanceLog -ContainerGroupName test-cg -ContainerName test-container -ResourceGroupName test-rg
Az.DesktopVirtualization
New-AzWvdHostPool
El cmdlet "New-AzWvdHostPool" ya no admite el parámetro "SsoContext" y no se encontró ningún alias para el nombre del parámetro original.
Expand-AzWvdMsixImage
El cmdlet "Expand-AzWvdMsixImage" ya no admite el tipo "Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20201102Preview.IMsixImageUri" para el parámetro "MsixImageUri".
Antes
$MsixImageUri = [Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20201102Preview.IMsixImageUri]::New()
Get-AzWvdDesktop -ResourceGroupName ResourceGroupName -ApplicationGroupName ApplicationGroupName -Name DesktopName | Expand-AzWvdMsixImage -MsixImageUri $MsixImageUri
Después
$MsixImageUri = [Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20210201Preview.IMsixImageUri]::New()
Get-AzWvdDesktop -ResourceGroupName ResourceGroupName -ApplicationGroupName ApplicationGroupName -Name DesktopName | Expand-AzWvdMsixImage -MsixImageUri $MsixImageUri
New-AzWvdMsixPackage
El tipo de elemento para el parámetro "PackageApplication" se ha cambiado de "Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20201102Preview.IMsixPackageApplications" a "Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20210201Preview.IMsixPackageApplications". El tipo de elemento para el parámetro "PackageDependency" se ha cambiado de "Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20201102Preview.IMsixPackageDependencies" a "Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20210201Preview.IMsixPackageDependencies".
Antes
PS C:\> $apps = @([Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20201102Preview.IMsixPackageApplications]::New())
PS C:\> $deps = @([Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20201102Preview.IMsixPackageDependencies]::New())
PS C:\> New-AzWvdMsixPackage -FullName PackageFullName `
-HostPoolName HostPoolName `
-ResourceGroupName ResourceGroupName `
-SubscriptionId SubscriptionId `
-DisplayName displayname `
-ImagePath imageURI `
-IsActive:$false `
-IsRegularRegistration:$false `
-LastUpdated datelastupdated `
-PackageApplication $apps `
-PackageDependency $deps `
-PackageFamilyName packagefamilyname `
-PackageName packagename `
-PackageRelativePath packagerelativepath `
-Version packageversion `
Después
PS C:\> $apps = @([Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20210201Preview.IMsixPackageApplications]::New())
PS C:\> $deps = @([Microsoft.Azure.PowerShell.Cmdlets.DesktopVirtualization.Models.Api20210201Preview.IMsixPackageDependencies]::New())
PS C:\> New-AzWvdMsixPackage -FullName PackageFullName `
-HostPoolName HostPoolName `
-ResourceGroupName ResourceGroupName `
-SubscriptionId SubscriptionId `
-DisplayName displayname `
-ImagePath imageURI `
-IsActive:$false `
-IsRegularRegistration:$false `
-LastUpdated datelastupdated `
-PackageApplication $apps `
-PackageDependency $deps `
-PackageFamilyName packagefamilyname `
-PackageName packagename `
-PackageRelativePath packagerelativepath `
-Version packageversion `
Update-AzWvdHostPool
El cmdlet "Update-AzWvdHostPool" ya no admite el parámetro "SsoContext" y no se encontró ningún alias para el nombre del parámetro original.
Az.StreamAnalytics
Get-AzStreamAnalyticsDefaultFunctionDefinition
El cmdlet "Get-AzStreamAnalyticsDefaultFunctionDefinition" ya no admite el parámetro "File" y no se encontró ningún alias para el nombre del parámetro original.
Antes
Get-AzStreamAnalyticsDefaultFunctionDefinition -ResourceGroupName "StreamAnalytics-Default-West-US" -JobName "StreamJob22" -File "C:\RetrieveDefaultDefinitionRequest.json" -Name "ScoreTweet"
Después
Get-AzStreamAnalyticsDefaultFunctionDefinition -ResourceGroupName azure-rg-test -JobName sajob-01-pwsh -Name mlsfunction-01 -BindingType Microsoft.MachineLearningServices -Endpoint "http://875da830-4d5f-44f1-b221-718a5f26a21d.eastus.azurecontainer.io/score"-UdfType Scalar
Input is specified in flattened parameters instead from the input file.
New-AzStreamAnalyticsJob
El cmdlet "New-AzStreamAnalyticsJob" ya no admite el parámetro "File" y no se encontró ningún alias para el nombre del parámetro original.
Antes
New-AzStreamAnalyticsJob -ResourceGroupName "StreamAnalytics-Default-West-US" -File "C:\JobDefinition.json"
Después
New-AzStreamAnalyticsJob -ResourceGroupName azure-rg-test -Name sajob-02-pwsh -Location westcentralus -SkuName Standard
Input is specified in flattened parameters instead from the input file.
New-AzStreamAnalyticsTransformation
El cmdlet "New-AzStreamAnalyticsTransformation" ya no admite el parámetro "File" y no se encontró ningún alias para el nombre del parámetro original.
Antes
New-AzStreamAnalyticsTransformation -ResourceGroupName "StreamAnalytics-Default-West-US" -File "C:\Transformation.json" -JobName "StreamingJob" -Name "StreamingJobTransform"
Después
New-AzStreamAnalyticsTransformation -ResourceGroupName azure-rg-test -JobName sajob-01-pwsh -Name tranf-01 -StreamingUnit 6 -Query "Select Id, Name from input-01"
Input is specified in flattened parameters instead from the input file.
Az.RecoveryServices
Set-AzRecoveryServicesBackupProperty
Se ha quitado el alias en plural Set-AzRecoveryServicesBackupProperties, deberá utilizarse el nombre del cmdlet Set-AzRecoveryServicesBackupProperty en el futuro.
Get-AzRecoveryServicesBackupJobDetail
Se ha eliminado el alias plural Get-AzRecoveryServicesBackupJobDetails, use el nombre de cmdlet Get-AzRecoveryServicesBackupJobDetail en el futuro
Antes
$jobDetails = Get-AzRecoveryServicesBackupJobDetails -VaultId $vault.ID -Job $job
$jobDetails2 = Get-AzRecoveryServicesBackupJobDetails -VaultId $vault.ID -JobId $job.JobId
Después
$jobDetails = Get-AzRecoveryServicesBackupJobDetail -VaultId $vault.ID -Job $job
$jobDetails2 = Get-AzRecoveryServicesBackupJobDetail -VaultId $vault.ID -JobId $job.JobId
Az.Storage
Remove-AzRmStorageShare
El cmdlet "Remove-AzRmStorageShare" antes podía quitar el recurso compartido con instantáneas de forma predeterminada, pero después del cambio, quitar el recurso compartido con instantáneas fallará por defecto. Es necesario añadir el parámetro "-Include Snapshots" para que la eliminación se realice correctamente.
Antes
Remove-AzRmStorageShare -ResourceGroupName $resourceGroupName -StorageAccountName $accountName -Name $shareName
Después
Remove-AzRmStorageShare -ResourceGroupName $resourceGroupName -StorageAccountName $accountName -Name $shareName -Force -Include Snapshots
Az.ServiceFabric
Add-AzServiceFabricClusterCertificate
Este cmdlet se ha quitado por completo. Siga las instrucciones aquí para agregar certificados de clúster.
Get-AzServiceFabricManagedClusterService
Cambie el modelo PSManagedService para evitar el uso del parámetro properties directamente desde el SDK. Ahora todas las propiedades están en el primer nivel del objeto. Y eliminen los parámetros en desuso InstanceCloseDelayDuration, DropSourceReplicaOnMove y ServiceDnsName
Antes
$service = Get-AzServiceFabricManagedClusterService -ResourceId $resourceId
$statelessService.Properties.ProvisioningState
Después
$service = Get-AzServiceFabricManagedClusterService -ResourceId $resourceId
$statelessService.ProvisioningState
New-AzServiceFabricManagedCluster
Quite el parámetro en desuso ReverseProxyEndpointPort.
New-AzServiceFabricManagedClusterService
Cambie el modelo PSManagedService para evitar el uso del parámetro properties directamente desde el SDK. Ahora todas las propiedades están en el primer nivel del objeto. Y quite los parámetros en desuso InstanceCloseDelayDuration, DropSourceReplicaOnMove y ServiceDnsName
Antes
$service = New-AzServiceFabricManagedClusterService -ResourceGroupName $resourceGroupName -ClusterName $clusterName -ApplicationName $appName -Name $serviceName -Type $serviceTypeName -Stateless -InstanceCount -1 -PartitionSchemaSingleton
$statelessService.Properties.ProvisioningState
Después
$service = New-AzServiceFabricManagedClusterService -ResourceGroupName $resourceGroupName -ClusterName $clusterName -ApplicationName $appName -Name $serviceName -Type $serviceTypeName -Stateless -InstanceCount -1 -PartitionSchemaSingleton
$statelessService.ProvisioningState
Remove-AzServiceFabricClusterCertificate
este cmdlet se ha eliminado completamente. Siga las instrucciones aquí para agregar certificados de clúster.
Remove-AzServiceFabricManagedClusterService
Cambie el modelo PSManagedService para evitar el uso del parámetro properties directamente desde el SDK. Ahora todas las propiedades están en el primer nivel del objeto.
Set-AzServiceFabricManagedCluster
Quite el parámetro en desuso ReverseProxyEndpointPort.
Set-AzServiceFabricManagedClusterService
Cambie el modelo PSManagedService para evitar el uso del parámetro properties directamente desde el SDK. Ahora todas las propiedades están en el primer nivel del objeto. Retire los parámetros en desuso InstanceCloseDelayDuration, DropSourceReplicaOnMove y ServiceDnsName.
Antes
$service = Get-AzServiceFabricManagedClusterService -ResourceId $resourceId
$statelessService.Properties.MinInstanceCount = 3
service | Set-AzServiceFabricManagedClusterService
Después
$service = Get-AzServiceFabricManagedClusterService -ResourceId $resourceId
$statelessService.MinInstanceCount = 3
service | Set-AzServiceFabricManagedClusterService