你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

将 Azure PowerShell 从 AzureRM 迁移到 Az

警告

AzureRM PowerShell 模块已自 2024 年 2 月 29 日起正式弃用。 为了确保持续获得支持和更新,建议用户从 AzureRM 迁移到 Az PowerShell 模块。

尽管 AzureRM 模块仍可运行,但不再受到维护或支持,任何继续使用的行为都由用户自行决定并自行承担风险。 有关过渡到 Az 模块的指导,请参阅我们的迁移资源

确定你是否要使用 AzureRM PowerShell 模块

使用以下命令确定你是否安装了 AzureRM PowerShell 模块:

Get-Module -Name AzureRM -ListAvailable

还可以对脚本执行全文搜索,寻找 *-AzureRM* 模式以确定是否有任何脚本正在使用 AzureRM PowerShell 模块。

升级到 Az PowerShell 模块

为 AzureRM cmdlet 编写的脚本不会自动与 Az 配合工作。 为了更轻松地转换,我们开发了 AzureRM 到 Az 迁移工具包。 不迁移到新的命令集十分省事,但本文将帮助你开始转换到 Az PowerShell 模块。 要详细了解创建 Az PowerShell 模块的原因,请参阅 Az Powershell 模块简介

新 cmdlet 名称已设计为易于学习。 请在 cmdlet 名称中使用 Az,而不是使用 AzureRmAzure。 例如,旧 cmdlet New-AzureRMVm 已变为 New-AzVm。 但是,在进行迁移时,并非熟悉新的 cmdlet 名称就可以了。 还必须了解重命名的模块、参数以及其他重要更改。

若要查看从 AzureRM 到 Az 的中断性变更的完整列表,请参阅从 AzureRM 到 Az 的全部变更

确保现有脚本兼容最新的 AzureRM 版本

在执行任何迁移步骤之前,请确定系统上安装了 AzureRM 的哪些版本。 这样做使你可以确保脚本已在最新版本上运行,并了解哪些 AzureRM 版本必须卸载。

若要确定已安装的 AzureRM 版本,请运行以下示例:

Get-Module -Name AzureRM -ListAvailable -All

AzureRM 的最新发布版本为 6.13.2 。 如果尚未安装此版本,则除了本文和中断性变更列表中描述的内容,现有脚本可能还需要进行其他修改才能使用 Az 模块。

如果脚本不兼容 AzureRM 6.13.2,请按照 AzureRM 5.x 到 6.x 迁移指南中的说明对其进行更新。 如果使用更低版本的 AzureRM 模块,请参阅每个主要版本的迁移指南。

此推荐选项可最大程度减少将 AzureRM 脚本迁移到 Az 所需的工作量。

借助 AzureRM 到 Az 迁移工具包,你可生成一个计划来确定在对脚本执行任何修改之前,以及在安装到 Az PowerShell 模块之前,将在这些脚本上进行哪些更改。

自动将 PowerShell 脚本从 AzureRM 迁移到 Az PowerShell 模块快速入门可指导你完成将 PowerShell 脚本从 AzureRM 自动更新到 Az PowerShell 模块的整个过程。

选项 2:结合使用兼容模式和 Enable-AzureRmAlias

Az 模块提供了一个兼容模式,方便你在更新到新语法期间使用现有脚本。 Enable-AzureRmAlias cmdlet 通过别名实现了兼容模式。 通过此模式,在使用现有脚本时只需最小程度的修改就可以完整迁移到 Az。 默认情况下,Enable-AzureRmAlias 仅为当前的 PowerShell 会话启用兼容别名。 使用其 Scope 参数在 PowerShell 会话中永久保存兼容别名。 有关详细信息,请参阅 Enable-AzureRmAlias 参考文档

重要

对于 Az cmdlet 来说,即使 cmdlet 名称使用了别名,也仍然可能存在新的(或重命名的)参数或更改的返回值。 不要期望通过别名来处理迁移事项。 请参阅中断性变更完整列表,了解在什么情况下可能需要对脚本进行更新。

在弃用 AzureRM PowerShell 模块后,不会弃用对 Enable-AzureRmAlias 的支持。

后续步骤