Migrar do AzureRM para Azure PowerShell AZ no Hub Azure StackMigrate from AzureRM to Azure PowerShell Az in Azure Stack Hub

O módulo Az tem paridade de recursos com o AzureRM, mas usa nomes de cmdlets menores e mais consistentes.The Az module has feature parity with AzureRM, but uses shorter and more consistent cmdlet names. Os scripts gravados para os cmdlets do AzureRM não funcionarão automaticamente com o novo módulo.Scripts written for the AzureRM cmdlets won't automatically work with the new module. Para facilitar a transição, o Az oferece ferramentas para permitir a execução de seus scripts existentes usando o AzureRM.To make the transition easier, Az offers tools to allow you to run your existing scripts using AzureRM. A migração para um novo conjunto de comandos nem sempre é conveniente, mas este artigo ajudará você a começar a realizar a transição para o novo módulo.No migration to a new command set is ever convenient, but this article will help you get started on transitioning to the new module.

Para ver a lista completa de alterações recentes entre o AzureRM e o Az, confira o Guia de migração para o Az 1.0.0To see the full list of breaking changes between AzureRM and Az, see the Migration guide for Az 1.0.0

Verificar se há versões instaladas do AzureRMCheck for installed versions of AzureRM

Antes de executar qualquer etapa de migração, verifique quais versões do AzureRM estão instaladas em seu sistema.Before taking any migration steps, check which versions of AzureRM are installed on your system. Isso permite que você verifique se os scripts já estão sendo executados na versão mais recente e se você pode ativar os aliases de comando sem desinstalar o AzureRM.Doing so allows you to make sure scripts are already running on the latest release, and let you know if you can enable command aliases without uninstalling AzureRM.

Para verificar qual versão do AzureRM você instalou, execute o comando:To check which version(s) of AzureRM you have installed, run the command:

Get-InstalledModule -Name AzureRM -AllVersions

Verificar se os scripts atuais funcionam com AzureRMCheck current scripts work with AzureRM

Essa é a etapa mais importante!This is the most important step! Execute seus scripts existentes e verifique se eles funcionam com a versão mais recente do AzureRM (2.5.0).Run your existing scripts, and make sure that they work with the latest release of AzureRM (2.5.0). Se os scripts não funcionarem, certifique-se de ler o Guia de migração do AzureRM.If your scripts don't work, make sure to read the AzureRM migration guide.

Instalar o módulo Az do Azure PowerShellInstall the Azure PowerShell Az module

A primeira etapa é instalar o módulo Az em sua plataforma.The first step is to install the Az module on your platform. Quando você instala o Az, é recomendável desinstalar o AzureRM.When you install Az, it's recommended that you uninstall AzureRM. Nas etapas a seguir, você aprenderá como continuar executando seus scripts existentes e habilitar a compatibilidade para os nomes de cmdlet antigos.In the following steps, you'll learn how to keep running your existing scripts and enable compatibility for old cmdlet names.

Para instalar o módulo Az do Azure PowerShell, siga estas etapas:To install the Azure PowerShell Az module, follow these steps:

Habilitar aliases de compatibilidade do AzureRMEnable AzureRM compatibility aliases

Importante

Habilite o modo de compatibilidade somente se você tiver desinstalado todas as versões do AzureRM.Only enable compatibility mode if you've uninstalled all versions of AzureRM. A ativação do modo de compatibilidade com os cmdlets do AzureRM ainda disponíveis poderá resultar em um comportamento imprevisível.Enabling compatibility mode with AzureRM cmdlets still available may result in unpredictable behavior. Ignore esta etapa se tiver decidido manter o AzureRM instalado, mas esteja ciente de que os cmdlets do AzureRM usarão os módulos mais antigos e não chamarão cmdlets do Az.Skip this step if you decided to keep AzureRM installed, but be aware that any AzureRM cmdlets will use the older modules and not call any Az cmdlets.

Com o AzureRM desinstalado e seus scripts funcionando com a versão mais recente do AzureRM, a próxima etapa é habilitar o modo de compatibilidade para o módulo Az.With AzureRM uninstalled and your scripts working with the latest AzureRM version, the next step is to enable the compatibility mode for the Az module. A compatibilidade é habilitada com o comando:Compatibility is enabled with the command:

Enable-AzureRmAlias -Scope CurrentUser

Os aliases permitem a capacidade de usar nomes de cmdlets antigos com o módulo Az instalado.Aliases enable the ability to use old cmdlet names with the Az module installed. Esses aliases são gravados no perfil do usuário para o escopo escolhido.These aliases are written to the user profile for the selected scope. Se não existir perfis de usuário, um perfil será criado.If no user profile exists, one is created.

Aviso

Você pode usar outro -Scope para este comando, mas isso não é recomendado.You can use a different -Scope for this command, but it's not recommended. Os aliases são gravados no perfil do usuário do escopo escolhido, portanto, mantenha-os habilitados para um escopo o mais limitado possível.Aliases are written to the user profile for the selected scope, so keep enabling them to as limited a scope as possible. Habilitar os aliases em todo o sistema também pode causar problemas para outros usuários que têm o AzureRM instalado em seu escopo local.Enabling aliases system-wide could also cause issues for other users which have AzureRM installed in their local scope.

Após habilitar o modo de alias, execute seus scripts novamente para confirmar que eles ainda funcionam conforme o esperado.Once the alias mode is enabled, run your scripts again to confirm that they still function as expected.

Alterar nomes de módulo e cmdletChange module and cmdlet names

Em geral, os nomes de módulos foram alterados para que AzureRM e Azure tornem-se Az, e o mesmo ocorreu com os cmdlets.In general, the module names have been changed so that AzureRM and Azure become Az, and the same for cmdlets. Por exemplo, o módulo AzureRM.Compute foi renomeado para Az.Compute.For example, the AzureRM.Compute module has been renamed to Az.Compute. New-AzureRMVM se tornou New-AzVM, e Get-AzureStorageBlob agora é Get-AzStorageBlob.New-AzureRMVM has become New-AzVM, and Get-AzureStorageBlob is now Get-AzStorageBlob.

Há exceções para essa alteração de nomenclatura e você deve estar atento.There are exceptions to this naming change that you should be aware of. Alguns módulos foram renomeados ou mesclados em módulos existentes sem que isso afetasse o sufixo de seus cmdlets, além de alterar AzureRM ou Azure para Az.Some modules were renamed or merged into existing modules without this affecting the suffix of their cmdlets, other than changing AzureRM or Azure to Az. Caso contrário, o sufixo completo do cmdlet foi alterado para refletir o novo nome do módulo.Otherwise, the full cmdlet suffix was changed to reflect the new module name.

Módulo AzureRMAzureRM module Módulo AzAz module O sufixo do cmdlet foi alterado?Cmdlet suffix changed?
AzureRM.profileAzureRM.Profile Az.AccountsAz.Accounts SimYes
AzureRM.InsightsAzureRM.Insights Az.MonitorAz.Monitor SimYes
AzureRM.TagsAzureRM.Tags Az.ResourcesAz.Resources NãoNo
AzureRM.UsageAggregatesAzureRM.UsageAggregates Az.BillingAz.Billing NãoNo
AzureRM.ConsumptionAzureRM.Consumption Az.BillingAz.Billing NãoNo

ResumoSummary

Seguindo essas etapas, é possível atualizar todos os scripts existentes para usar o novo módulo.By following these steps, you can update all of your existing scripts to use the new module. Se você tiver dúvidas ou problemas com estas etapas que dificultaram a migração, deixe seu comentário sobre este artigo para que possamos melhorar as instruções.If you have any questions or problems with these steps that made your migration difficult, please comment on this article so that we can improve the instructions.

Alterações da falha para Az 1.0.0Breaking changes for Az 1.0.0

Este documento fornece informações detalhadas sobre as alterações entre o AzureRM 6.x e o novo módulo Az, versão 1.x e posterior.This document provides detailed information on the changes between AzureRM 6.x and the new Az module, version 1.x and later. O sumário ajudará a orientá-lo por um caminho de migração completa, incluindo alterações específicas do módulo que possam afetar seus scripts.The table of contents will help guide you through a full migration path, including module-specific changes that may affect your scripts.

Alterações da falha geraisGeneral breaking changes

Esta seção fornece detalhes sobre as alterações gerais da falha que fazem parte do novo design do módulo Az.This section details the general breaking changes that are part of the redesign of the Az module.

Alterações de prefixo de substantivo de cmdletCmdlet noun prefix changes

No módulo AzureRM, os cmdlets usavam AzureRM ou Azure como prefixo de substantivo.In the AzureRM module, cmdlets used either AzureRM or Azure as a noun prefix. O Az simplifica e normaliza os nomes dos cmdlets, de modo que todos os cmdlets usem 'Az' como seu prefixo de substantivo do cmdlet.Az simplifies and normalizes cmdlet names, so that all cmdlets use 'Az' as their cmdlet noun prefix. Por exemplo:For example:

Get-AzureRMVM
Get-AzureKeyVaultSecret

Foi alterado para:Has changed to:

Get-AzVM
Get-AzKeyVaultSecret

Para simplificar a transição para esses novos nomes de cmdlets, o Az introduz dois novos cmdlets, Enable-AzureRmAlias e Disable-AzureRmAlias.To make the transition to these new cmdlet names simpler, Az introduces two new cmdlets, Enable-AzureRmAlias and Disable-AzureRmAlias. Enable-AzureRmAlias cria aliases para os nomes de cmdlets mais antigos no AzureRM que são mapeados para os nomes de cmdlets mais recentes do Az.Enable-AzureRmAlias creates aliases for the older cmdlet names in AzureRM that map to the newer Az cmdlet names. O uso do argumento -Scope com Enable-AzureRmAlias permite que você escolha em que local os aliases serão habilitados.Using the -Scope argument with Enable-AzureRmAlias allows you to choose where aliases are enabled.

Por exemplo, o script a seguir no AzureRM:For example, the following script in AzureRM:

#Requires -Modules AzureRM.Storage
Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob

Pode ser executado com alterações mínimas usando Enable-AzureRmAlias:Can be run with minimal changes using Enable-AzureRmAlias:

#Requires -Modules Az.Storage
Enable-AzureRmAlias -Scope Process
Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob

A execução de Enable-AzureRmAlias -Scope CurrentUser habilitará os aliases para todas as sessões do PowerShell, para que, após a execução desse cmdlet, um script como este não precise ser alterado:Running Enable-AzureRmAlias -Scope CurrentUser will enable the aliases for all PowerShell sessions you open, so that after executing this cmdlet, a script like this would not need to be changed at all:

Get-AzureRmStorageAccount | Get-AzureStorageContainer | Get-AzureStorageBlob

Para obter detalhes completos sobre o uso dos cmdlets de alias, confira a referência de Enable-AzureRmAlias.For complete details on the usage of the alias cmdlets, see the Enable-AzureRmAlias reference.

Quando você estiver pronto para desabilitar os aliases, Disable-AzureRmAlias removerá os aliases criados.When you're ready to disable aliases, Disable-AzureRmAlias removes the created aliases. Para obter detalhes completos, confira a referência de Disable-AzureRmAlias.For complete details, see the Disable-AzureRmAlias reference.

Importante

Ao desabilitar os aliases, verifique se eles estão desabilitados para todos os escopos que tinham aliases habilitados.When disabling aliases, make sure that they are disabled for all scopes which had aliases enabled.

Alterações no nome do móduloModule name changes

Os nomes do módulo foram alterados de AzureRM.* para Az.*, exceto para os seguintes módulos:The module names have changed from AzureRM.* to Az.*, except for the following modules:

Módulo AzureRMAzureRM module Módulo AzAz module
Azure.StorageAzure.Storage Az.StorageAz.Storage
Azure.AnalysisServicesAzure.AnalysisServices Az.AnalysisServicesAz.AnalysisServices
AzureRM.profileAzureRM.Profile Az.AccountsAz.Accounts
AzureRM.InsightsAzureRM.Insights Az.MonitorAz.Monitor
AzureRM.RecoveryServices.BackupAzureRM.RecoveryServices.Backup Az.RecoveryServicesAz.RecoveryServices
AzureRM.RecoveryServices.SiteRecoveryAzureRM.RecoveryServices.SiteRecovery Az.RecoveryServicesAz.RecoveryServices
AzureRM.TagsAzureRM.Tags Az.ResourcesAz.Resources
AzureRM.MachineLearningComputeAzureRM.MachineLearningCompute Az.MachineLearningAz.MachineLearning
AzureRM.UsageAggregatesAzureRM.UsageAggregates Az.BillingAz.Billing
AzureRM.ConsumptionAzureRM.Consumption Az.BillingAz.Billing

As alterações nos nomes dos módulos significam que qualquer script que usa #Requires ou Import-Module para carregar módulos específicos precisarão ser alterados para usar o novo módulo.The changes in module names mean that any script that uses #Requires or Import-Module to load specific modules will need to be changed to use the new module instead. Para os módulos em que o sufixo do cmdlet não foi alterado, isso significa que, embora o nome do módulo tenha sido alterado, isso não ocorreu com o sufixo que indica o espaço da operação.For modules where the cmdlet suffix has not changed, this means that although the module name has changed, the suffix indicating the operation space has not.

Migrando instruções de módulo requires e ImportMigrating requires and import module statements

Os scripts que usam #Requires ou Import-Module para declarar uma dependência de módulos AzureRM precisam ser atualizados para usar os novos nomes de módulos.Scripts that use #Requires or Import-Module to declare a dependency on AzureRM modules must be updated to use the new module names. Por exemplo:For example:

#Requires -Module AzureRM.Compute

Deve ser alterado para:Should be changed to:

#Requires -Module Az.Compute

Para Import-Module:For Import-Module:

Import-Module -Name AzureRM.Compute

Deve ser alterado para:Should be changed to:

Import-Module -Name Az.Compute

Migrando invocações de cmdlet totalmente qualificadasMigrating fully qualified cmdlet invocations

Os scripts que usam as invocações de cmdlet qualificadas por módulo, como:Scripts that use module-qualified cmdlet invocations, such as:

AzureRM.Compute\Get-AzureRmVM

Precisam ser alterados para usar os novos nomes de módulos e cmdlets:Must be changed to use the new module and cmdlet names:

Az.Compute\Get-AzVM

Como migrar dependências de manifesto de móduloMigrating module manifest dependencies

Os módulos que expressam dependências de módulos AzureRM por meio de um arquivo de manifesto (.psd1) de módulo precisarão atualizar os nomes de módulos em sua seção RequiredModules:Modules that express dependencies on AzureRM modules through a module manifest (.psd1) file will need to updated the module names in their RequiredModules section:

RequiredModules = @(@{ModuleName="AzureRM.Profile"; ModuleVersion="5.8.2"})

Precisa ser alterado para:Must be changed to:

RequiredModules = @(@{ModuleName="Az.Accounts"; ModuleVersion="1.0.0"})

Módulos removidosRemoved modules

Os seguintes módulos foram removidos:The following modules have been removed:

  • AzureRM.Backup
  • AzureRM.Compute.ManagedService
  • AzureRM.Scheduler

Não há mais suporte ativo para as ferramentas desses serviços.The tools for these services are no longer actively supported. Os clientes são incentivados a mudar para serviços alternativos, assim que for conveniente.Customers are encouraged to move to alternative services as soon as it is convenient.

Windows PowerShell 5.1 e .NET 4.7.2Windows PowerShell 5.1 and .NET 4.7.2

O uso do Az com o PowerShell 5.1 para Windows exige a instalação do .NET Framework 4.7.2.Using Az with PowerShell 5.1 for Windows requires the installation of .NET Framework 4.7.2. O uso do PowerShell Core 6.x ou posterior não exige o .NET Framework.Using PowerShell Core 6.x or later does not require .NET Framework.

Remoção temporária de logon de usuário usando PSCredentialTemporary removal of user login using PSCredential

Devido a alterações no fluxo de autenticação para o .NET Standard, estamos temporariamente removendo o logon de usuário por meio do PSCredential.Due to changes in the authentication flow for .NET Standard, we are temporarily removing user login via PSCredential. Essa funcionalidade será introduzida novamente na versão de 15/1/2019 do PowerShell 5.1 para Windows.This capability will be re-introduced in the 1/15/2019 release for PowerShell 5.1 for Windows. Isso é abordado detalhadamente neste problema do GitHub.This is discussed in detail in this GitHub issue.

Logon de código de dispositivo padrão em vez de prompt do navegador da WebDefault device code login instead of web browser prompt

Devido a alterações no fluxo de autenticação para o .NET Standard, estamos usando o logon do dispositivo como o fluxo de logon padrão durante o logon interativo.Due to changes in the authentication flow for .NET Standard, we are using device login as the default login flow during interactive login. O logon baseado em navegador da Web será reintroduzido no PowerShell 5.1 para Windows como o padrão na versão de 15/1/2019.Web browser based login will be re-introduced for PowerShell 5.1 for Windows as the default in the 1/15/2019 release. Nesse momento, os usuários poderão escolher logon de dispositivo usando um parâmetro Switch.At that time, users will be able to choose device login using a Switch parameter.

Alterações de falhas para módulosModule breaking changes

Esta seção fornece detalhes sobre alterações específicas da falha para cmdlets e módulos individuais.This section details specific breaking changes for individual modules and cmdlets.

Az.ApiManagement (anteriormente AzureRM.ApiManagement)Az.ApiManagement (previously AzureRM.ApiManagement)

  • Remoção dos seguintes cmdlets:Removed the following cmdlets:
    • New-AzureRmApiManagementHostnameConfigurationNew-AzureRmApiManagementHostnameConfiguration
    • Set-AzureRmApiManagementHostnamesSet-AzureRmApiManagementHostnames
    • Update-AzureRmApiManagementDeploymentUpdate-AzureRmApiManagementDeployment
    • Import-AzureRmApiManagementHostnameCertificateImport-AzureRmApiManagementHostnameCertificate
    • Use o cmdlet Set-AzApiManagement para definir essas propriedadesUse Set-AzApiManagement cmdlet to set these properties instead
  • Remoção das seguintes propriedades:Removed the following properties:
    • Removidas as propriedades PortalHostnameConfiguration, ProxyHostnameConfiguration, ManagementHostnameConfiguration e ScmHostnameConfiguration do tipo PsApiManagementHostnameConfiguration de PsApiManagementContext.Removed property PortalHostnameConfiguration, ProxyHostnameConfiguration, ManagementHostnameConfiguration and ScmHostnameConfiguration of type PsApiManagementHostnameConfiguration from PsApiManagementContext. Em vez disso, use PortalCustomHostnameConfiguration, ProxyCustomHostnameConfiguration, ManagementCustomHostnameConfiguration e ScmCustomHostnameConfiguration do tipo PsApiManagementCustomHostNameConfiguration.Instead use PortalCustomHostnameConfiguration, ProxyCustomHostnameConfiguration, ManagementCustomHostnameConfiguration and ScmCustomHostnameConfiguration of type PsApiManagementCustomHostNameConfiguration.
    • Removida a propriedade StaticIPs de PsApiManagementContext.Removed property StaticIPs from PsApiManagementContext. A propriedade foi dividida em PublicIPAddresses e PrivateIPAddresses.The property has been split into PublicIPAddresses and PrivateIPAddresses.
    • Removida a propriedade necessária Location do cmdlet New-AzureApiManagementVirtualNetwork.Removed required property Location from New-AzureApiManagementVirtualNetwork cmdlet.

Az.Billing (anteriormente AzureRM.Billing, AzureRM.Consumption e AzureRM.UsageAggregates)Az.Billing (previously AzureRM.Billing, AzureRM.Consumption, and AzureRM.UsageAggregates)

  • O parâmetro InvoiceName foi removido em favor do cmdlet Get-AzConsumptionUsageDetail.The InvoiceName parameter was removed from the Get-AzConsumptionUsageDetail cmdlet. Os scripts precisarão usar outros parâmetros de identidade para a fatura.Scripts will need to use other identity parameters for the invoice.

Az.Compute (anteriormente AzureRM.Compute)Az.Compute (previously AzureRM.Compute)

  • IdentityIds foram removidos da propriedade Identity nos Scripts dos objetos PSVirtualMachine e PSVirtualMachineScaleSet, que não devem mais usar o valor desse campo para tomar decisões de processamento.IdentityIds are removed from Identity property in PSVirtualMachine and PSVirtualMachineScaleSet objects Scripts should no longer use the value of this field to make processing decisions.
  • O tipo de propriedade InstanceView do objeto PSVirtualMachineScaleSetVM foi alterado de VirtualMachineInstanceView para VirtualMachineScaleSetVMInstanceViewThe type of InstanceView property of PSVirtualMachineScaleSetVM object is changed from VirtualMachineInstanceView to VirtualMachineScaleSetVMInstanceView
  • As propriedades AutoOSUpgradePolicy e AutomaticOSUpgrade foram removidas da propriedade UpgradePolicyAutoOSUpgradePolicy and AutomaticOSUpgrade properties are removed from UpgradePolicy property
  • O tipo de propriedade Sku do objeto PSSnapshotUpdate foi alterado de DiskSku para SnapshotSkuThe type of Sku property in PSSnapshotUpdate object is changed from DiskSku to SnapshotSku
  • VmScaleSetVMParameterSet foi removido do cmdlet Add-AzVMDataDisk. Não é mais possível adicionar um disco de dados individualmente em uma VM ScaleSet.VmScaleSetVMParameterSet is removed from Add-AzVMDataDisk cmdlet, you can no longer add a data disk individually to a ScaleSet VM.

Az.KeyVault (anteriormente AzureRM.KeyVault)Az.KeyVault (previously AzureRM.KeyVault)

  • A propriedade PurgeDisabled foi removida dos objetos PSKeyVaultKeyAttributes, PSKeyVaultKeyIdentityItem e PSKeyVaultSecretAttributes e os Scripts não devem fazer referência à propriedade PurgeDisabled para tomar decisões de processamento.The PurgeDisabled property was removed from the PSKeyVaultKeyAttributes, PSKeyVaultKeyIdentityItem, and PSKeyVaultSecretAttributes objects Scripts should no longer reference the PurgeDisabled property to make processing decisions.

Az.Monitor (anteriormente AzureRM.Insights)Az.Monitor (previously AzureRM.Insights)

  • Removidos os nomes no plural dos parâmetros Categories e Timegrains em favor de nomes de parâmetro no singular dos Scripts cmdlet Set-AzDiagnosticSetting sendo usadosRemoved plural names Categories and Timegrains parameter in favor of singular parameter names from Set-AzDiagnosticSetting cmdlet Scripts using

    Set-AzureRmDiagnosticSetting -Timegrains PT1M -Categories Category1, Category2
    

    Deve ser alterado paraShould be changed to

    Set-AzDiagnosticSetting -Timegrain PT1M -Category Category1, Category2
    

Az.Network (anteriormente AzureRM.Network)Az.Network (previously AzureRM.Network)

  • Removido o parâmetro preterido ResourceId do cmdlet Get-AzServiceEndpointPolicyDefinitionRemoved deprecated ResourceId parameter from Get-AzServiceEndpointPolicyDefinition cmdlet
  • Removida a propriedade preterida EnableVmProtection do objeto PSVirtualNetworkRemoved deprecated EnableVmProtection property from PSVirtualNetwork object
  • Removido o cmdlet preteridos Set-AzVirtualNetworkGatewayVpnClientConfigRemoved deprecated Set-AzVirtualNetworkGatewayVpnClientConfig cmdlet

Os scripts não devem mais tomar decisões de processamento com base nos valores desses campos.Scripts should no longer make processing decisions based on the values fo these fields.

Az.Resources (anteriormente AzureRM.Resources)Az.Resources (previously AzureRM.Resources)

  • Removido o parâmetro Sku do cmdlet New/Set-AzPolicyAssignmentRemoved Sku parameter from New/Set-AzPolicyAssignment cmdlet

  • Removido o parâmetro de Password das Senhas cmdlets New-AzADServicePrincipal e New-AzADSpCredential automaticamente geradas, nos scripts que forneciam a senha:Removed Password parameter from New-AzADServicePrincipal and New-AzADSpCredential cmdlet Passwords are automatically generated, scripts that provided the password:

    New-AzAdSpCredential -ObjectId 1f99cf81-0146-4f4e-beae-2007d0668476 -Password $secPassword
    

    Devem ser alterados para recuperar a senha da saída:Should be changed to retrieve the password from the output:

    $credential = New-AzAdSpCredential -ObjectId 1f99cf81-0146-4f4e-beae-2007d0668476
    $secPassword = $credential.Secret
    

Az.Storage (anteriormente Azure.Storage e AzureRM.Storage)Az.Storage (previously Azure.Storage and AzureRM.Storage)

  • Para dar suporte à criação de um contexto de armazenamento Oauth com apenas o nome da conta de armazenamento, o conjunto de parâmetros padrão foi alterado para OAuthParameterSetTo support creating an Oauth storage context with only the storage account name, the default parameter set has been changed to OAuthParameterSet
    • Exemplo: $ctx = New-AzureStorageContext -StorageAccountName $accountNameExample: $ctx = New-AzureStorageContext -StorageAccountName $accountName
  • O parâmetro Location agora é obrigatório no cmdlet Get-AzStorageUsageThe Location parameter has become mandatory in the Get-AzStorageUsage cmdlet
  • Os métodos da API de armazenamento agora usam o padrão assíncrono baseado em tarefas (TAP), em vez de chamadas à API síncronas.The Storage API methods now use the Task-based Asynchronous Pattern (TAP), instead of synchronous API calls. Os seguintes exemplos demonstram os novos comandos assíncronos:The following examples demonstrate the new asynchronous commands:

Instantâneo de BLOBBlob snapshot

AzureRM:AzureRM:

$b = Get-AzureStorageBlob -Container $containerName -Blob $blobName -Context $ctx
$b.ICloudBlob.Snapshot()

Az:Az:

$b = Get-AzStorageBlob -Container $containerName -Blob $blobName -Context $ctx
$task = $b.ICloudBlob.SnapshotAsync()
$task.Wait()
$snapshot = $task.Result

Instantâneo de compartilhamentoShare snapshot

AzureRM:AzureRM:

$Share = Get-AzureStorageShare -Name $containerName -Context $ctx
$snapshot = $Share.Snapshot()

Az:Az:

$Share = Get-AzStorageShare -Name $containerName -Context $ctx
$task = $Share.SnapshotAsync()
$task.Wait()
$snapshot = $task.Result

Cancelar a exclusão de blob com exclusão reversívelUndelete soft-deleted blob

AzureRM:AzureRM:

$b = Get-AzureStorageBlob -Container $containerName -Blob $blobName -IncludeDeleted -Context $ctx
$b.ICloudBlob.Undelete()

Az:Az:

$b = Get-AzStorageBlob -Container $containerName -Blob $blobName -IncludeDeleted -Context $ctx
$task = $b.ICloudBlob.UndeleteAsync()
$task.Wait()

Definir camada do blobSet blob tier

AzureRM: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: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 (anteriormente AzureRM.Websites)Az.Websites (previously AzureRM.Websites)

  • Removidas as propriedades preteridas PSAppServicePlan, PSCertificate, PSCloningInfo e PSSite dos objetosRemoved deprecated properties from the PSAppServicePlan, PSCertificate, PSCloningInfo, and PSSite objects

Próximas etapasNext steps