Guia de migração para o Az 2.0.0
Este documento descreve as alterações entre as versões 1.0.0 e 2.0.0 do Az
Sumário
Alterações de falhas para módulos
Az.Compute
Remoção do parâmetro
Managed
dos cmdletsNew-AzAvailabilitySet
eUpdate-AzAvailabilitySet
a favor do uso deSku = Aligned
Antes
Update-AzAvailabilitySet -Managed
After (após)
Update-AzAvailabilitySet -Sku Aligned
Para fins de consistência, remoção do parâmetro
Image
dos conjuntos de parâmetros 'ByName' e 'ByResourceId' emUpdate-AzImage
Antes
Observe que o código abaixo é funcional, mas o ImageName passado não é usado; portanto, a remoção desse parâmetro não tem nenhum impacto funcional.
Update-AzImage -ResourceGroupName $Rg -ImageName $Name -Image $Image -Tag $tags Update-AzImage -ResourceId $Id -Image $Image -Tag $tags
After (após)
Update-AzImage -ResourceGroupName $Rg -ImageName $Name -Tag $tags Update-AzImage -ResourceId $Id -Tag $tags
Para fins de consistência, remoção do parâmetro
Name
dos conjuntos de parâmetros 'ByObject' e 'ByResourceId' emRestart-AzVM
Antes
Observe que o código abaixo é funcional, mas o Name passado não é usado; portanto, a remoção desse parâmetro não tem nenhum impacto funcional.
Restart-AzVM -InputObject $VM -Name $Name Restart-AzVM -ResourceId $Id -Name $Name
After (após)
Restart-AzVM -InputObject $VM Restart-AzVM -ResourceId $Id
Para fins de consistência, remoção do parâmetro
Name
dos conjuntos de parâmetros 'ByObject' e 'ByResourceId' emStart-AzVM
Antes
Observe que o código abaixo é funcional, mas o Name passado não é usado; portanto, a remoção desse parâmetro não tem nenhum impacto funcional.
Start-AzVM -InputObject $VM -Name $Name Start-AzVM -ResourceId $Id -Name $Name
After (após)
Start-AzVM -InputObject $VM Start-AzVM -ResourceId $Id
Para fins de consistência, remoção do parâmetro
Name
dos conjuntos de parâmetros 'ByObject' e 'ByResourceId' emStop-AzVM
Antes
Observe que o código abaixo é funcional, mas o Name passado não é usado; portanto, a remoção desse parâmetro não tem nenhum impacto funcional.
Stop-AzVM -InputObject $VM -Name $Name Stop-AzVM -ResourceId $Id -Name $Name
After (após)
Stop-AzVM -InputObject $VM Stop-AzVM -ResourceId $Id
Para fins de consistência, remoção do parâmetro
Name
dos conjuntos de parâmetros 'ByObject' e 'ByResourceId' emRemove-AzVM
Antes
Observe que o código abaixo é funcional, mas o Name passado não é usado; portanto, a remoção desse parâmetro não tem nenhum impacto funcional.
Remove-AzVM -InputObject $VM -Name $Name Remove-AzVM -ResourceId $Id -Name $Name
After (após)
Remove-AzVM -InputObject $VM Remove-AzVM -ResourceId $Id
Para fins de consistência, remoção do parâmetro
Name
dos conjuntos de parâmetros 'ByObject' e 'ByResourceId' emSet-AzVM
Antes
Observe que o código abaixo é funcional, mas o Name passado não é usado; portanto, a remoção desse parâmetro não tem nenhum impacto funcional.
Set-AzVM -InputObject $VM -Name $Name ... Set-AzVM -ResourceId $Id -Name $Name ...
After (após)
Set-AzVM -InputObject $VM ... Set-AzVM -ResourceId $Id ...
Para fins de consistência, remoção do parâmetro
Name
dos conjuntos de parâmetros 'ByObject' e 'ByResourceId' emSave-AzVMImage
Antes
Observe que o código abaixo é funcional, mas o Name passado não é usado; portanto, a remoção desse parâmetro não tem nenhum impacto funcional.
Save-AzVMImage -InputObject $VM -Name $Name ... Save-AzVMImage -ResourceId $Id -Name $Name ...
After (após)
Save-AzVMImage -InputObject $VM ... Save-AzVMImage -ResourceId $Id ...
Adição da propriedade ProtectionPolicy para encapsular a propriedade
ProtectFromScaleIn
emPSVirtualMachineScaleSetVM
Antes
$vmss = Get-AzVMssVM ... $vmss.ProtectFromScaleIn = $true $vmss = Update-AzVMssVM ... $vmss.ProtectFromScaleIn = $true $vmss = Remove-AzVMssVMDataDisk ... $vmss.ProtectFromScaleIn = $true
After (após)
$vmss = Get-AzVMssVM ... $vmss.ProtectionPolicy.ProtectFromScaleIn = $true $vmss = Update-AzVMssVM ... $vmss.ProtectionPolicy.ProtectFromScaleIn = $true $vmss = Remove-AzVMssVMDataDisk ... $vmss.ProtectionPolicy.ProtectFromScaleIn = $true
Adição da propriedade
EncryptionSettingsCollection
para delimitar a propriedadeEncryptionSettings
emPSDisk
Antes
$disk = New-AzDisk ... | Set-AzDiskDiskEncrytionKey ... $disk.EncryptionSettings $disk = New-AzDisk ... | Set-AzDiskKeyEncrytionKey ... $disk.EncryptionSettings $update = New-AzDiskUpdateConfig | Set-AzDiskUpdateDiskEncryptionKey ... $update.EncryptionSettings $update = New-AzDiskUpdateConfig | Set-AzDiskUpdateKeyEncryptionKey ... $update.EncryptionSettings
After (após)
$disk = New-AzDisk ... | Set-AzDiskDiskEncrytionKey ... $disk.EncryptionSettingsCollection.EncryptionSettings $disk = New-AzDisk ... | Set-AzDiskKeyEncrytionKey ... $disk.EncryptionSettingsCollection.EncryptionSettings $update = New-AzDiskUpdateConfig | Set-AzDiskUpdateDiskEncryptionKey ... $update.EncryptionSettingsCollection.EncryptionSettings $update = New-AzDiskUpdateConfig | Set-AzDiskUpdateKeyEncryptionKey ... $update.EncryptionSettingsCollection.EncryptionSettings
Adição da propriedade
EncryptionSettingsCollection
para delimitar a propriedadeEncryptionSettings
emPSSnapshot
Antes
$snap = New-AzSnapshotConfig ... | Set-AzSnapshotDiskEncryptionKey ... $snap.EncryptionSettings $snap = New-AzSnapshotConfig ... | Set-AzSnapshotKeyEncryptionKey ... $snap.EncryptionSettings $update = New-AzSnapshotUpdateConfig ... | Set-AzSnapshotUpdateDiskEncryptionKey ... $update.EncryptionSettings $update = New-AzSnapshotUpdateConfig ... | Set-AzSnapshotUpdateKeyEncryptionKey ... $update.EncryptionSettings
After (após)
$snap = New-AzSnapshotConfig ... | Set-AzSnapshotDiskEncryptionKey ... $snap.EncryptionSettingsCollection.EncryptionSettings $snap = New-AzSnapshotConfig ... | Set-AzSnapshotKeyEncryptionKey ... $snap.EncryptionSettingsCollection.EncryptionSettings $update = New-AzSnapshotUpdateConfig ... | Set-AzSnapshotUpdateDiskEncryptionKey ... $update.EncryptionSettingsCollection.EncryptionSettings $update = New-AzSnapshotUpdateConfig ... | Set-AzSnapshotUpdateKeyEncryptionKey ... $update.EncryptionSettingsCollection.EncryptionSettings
Remoção da propriedade
VirtualMachineProfile
dePSVirtualMachineScaleSet
Antes
$vmss = New-AzVMSSConfig ... $vmss.VirtualMachineProfile.AdditionalCapabilities.UltraSSDEnabled = $true
After (após)
$vmss = New-AzVMSSConfig ... $vmss.AdditionalCapabilities.UltraSSDEnabled = $true
O cmdlet
Set-AzVMBootDiagnostic
removeu o alias paraSet-AzVMBootDiagnostics
Antes
Uso do alias preterido
Set-AzVMBootDiagnostics
After (após)
Set-AzVMBootDIagnostic
O cmdlet
Export-AzLogAnalyticThrottledRequest
removeu o alias paraExport-AzLogAnalyticThrottledRequests
Antes
Uso do alias preterido
Export-AzLogAnalyticThrottledRequests
After (após)
Export-AzLogAnalyticThrottledRequest
Az.HDInsight
- Remoção dos cmdlets
Grant-AzHDInsightHttpServicesAccess
eRevoke-AzHDInsightHttpServicesAccess
. Eles não são mais necessários porque o acesso HTTP está sempre habilitado em todos os clusters do HDInsight. - Adição de um novo cmdlet
Set-AzHDInsightGatewayCredential
. Use esse cmdlet para alterar o nome de usuário e a senha HTTP do gateway (substituiGrant-AzHDInsightHttpServicesAccess
). - Atualização do cmdlet
Get-AzHDInsightJobOutput
para dar suporte ao acesso granular baseado em função à chave de armazenamento.- Os usuários com as funções Operador do Cluster HDInsight, Colaborador ou Proprietário não serão afetados.
- Os usuários com apenas a função Leitor precisarão especificar o parâmetro
DefaultStorageAccountKey
explicitamente.
Para obter mais informações sobre essas alterações de acesso baseado em função, confira aka.ms/hdi-config-update
Antes
Grant-AzHDInsightHttpServicesAccess -ClusterName $cluster -HttpCredential $credential
After (após)
Set-AzHDInsightGatewayCredential -ClusterName $cluster -HttpCredential $credential
Os usuários com apenas a função Leitor para o cmdlet Get-AzHDInsightJobOutput
Antes
Get-AzHDInsightJobOutput -ClusterName $clusterName -JobId $jobId
After (após)
Get-AzHDInsightJobOutput -ClusterName $clusterName -JobId $jobId -DefaultStorageAccountKey $storageAccountKey
Az.Storage
Os namespaces para os tipos retornados de cmdlets de Blob, Fila e Arquivo foram alterados de
Microsoft.WindowsAzure.Storage
paraMicrosoft.Azure.Storage
. Embora essa não seja tecnicamente uma alteração da falha de acordo com a política de alteração da falha, ela pode exigir algumas alterações no código que usa os métodos do SDK do .NET de Armazenamento para interagir com os objetos retornados desses cmdlets.Exemplo 1: adicionar uma mensagem a uma fila (alterar o namespace do objeto CloudQueueMessage)
Antes:
$queue = Get-AzStorageQueue –Name $queueName –Context $ctx $queueMessage = New-Object -TypeName "Microsoft.WindowsAzure.Storage.Queue.CloudQueueMessage,$($queue.CloudQueue.GetType().Assembly.FullName)" -ArgumentList "This is message 1" $queue.CloudQueue.AddMessageAsync($QueueMessage)
Após:
$queue = Get-AzStorageQueue –Name $queueName –Context $ctx $queueMessage = New-Object -TypeName "Microsoft.Azure.Storage.Queue.CloudQueueMessage,$($queue.CloudQueue.GetType().Assembly.FullName)" -ArgumentList "This is message 1" $queue.CloudQueue.AddMessageAsync($QueueMessage)
Exemplo 2: efetuar fetch de atributos de blob/arquivo com AccessCondition (alterar o namespace do objeto AccessCondition)
Antes:
$accessCondition= New-Object Microsoft.WindowsAzure.Storage.AccessCondition $blob = Get-AzureStorageBlob -Container $containerName -Blob $blobName $blob.ICloudBlob.FetchAttributes($accessCondition) $file = Get-AzureStorageFile -ShareName $shareName -Path $filepath $file.FetchAttributes($accessCondition)
Após:
$accessCondition= New-Object Microsoft.Azure.Storage.AccessCondition $blob = Get-AzureStorageBlob -Container $containerName -Blob $blobName $blob.ICloudBlob.FetchAttributes($accessCondition) $file = Get-AzureStorageFile -ShareName $shareName -Path $filepath $file.FetchAttributes($accessCondition)
Embora essa não seja tecnicamente uma alteração interruptiva, você observará diferenças de saída na propriedade Sku.Name das contas de armazenamento retornadas das alterações em
New/Get/Set-AzStorageAccount
são descritas a seguir. (Após a alteração, o SkuName de saída e de entrada são alinhados.)- "StandardLRS" -> "Standard_LRS";
- "StandardGRS" -> "Standard_GRS";
- "StandardRAGRS" -> "Standard_RAGRS";
- "StandardZRS" -> "Standard_ZRS";
- "PremiumLRS" -> "Premium_LRS";
O comportamento do serviço padrão ao criar uma conta de armazenamento sem especificar um tipo foi alterado. Nas versões anteriores, quando uma conta de armazenamento era criada sem nenhum
Kind
especificado, o tipo de conta de armazenamento deStorage
era usado na nova versãoStorageV2
é o valorKind
padrão. Caso você precise criar uma conta de armazenamento V1 com o tipo 'Storage', adicione o parâmetro '-Kind Storage'Exemplo: criar uma conta de armazenamento (alteração de tipo padrão)
Antes:
PS c:\> New-AzStorageAccount -ResourceGroupName groupname -Name accountname -SkuName Standard_LRS -Location "westus" StorageAccountName ResourceGroupName Location SkuName Kind AccessTier CreationTime ProvisioningState EnableHttpsTrafficOnly ------------------ ----------------- -------- ------- ---- ---------- ------------ ----------------- ---------------------- accountname groupname westus StandardLRS Storage Hot 4/17/2018 10:34:32 AM Succeeded False
Após:
PS c:\> New-AzStorageAccount -ResourceGroupName groupname -Name accountname -SkuName Standard_LRS -Location "westus" StorageAccountName ResourceGroupName Location SkuName Kind AccessTier CreationTime ProvisioningState EnableHttpsTrafficOnly ------------------ ----------------- -------- ------- ---- ---------- ------------ ----------------- ---------------------- accountname groupname westus Standard_LRS StorageV2 Hot 4/17/2018 10:34:32 AM Succeeded False
Azure PowerShell
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de