Az / AzureRM / 旧版 Azure Powershell 冲突

Az / AzureRM / Legacy Azure Powershell Conflicts

我正在尝试从 AzureRM 升级到用于 powershell 的新 Az 模块。我们仍然有多种使用 "legacy" 服务管理 API 资源,例如经典的 Azure 云服务,这些(据我所知)仍然需要使用旧的 Azure powershell 模块。

我卸载了所有 AzureRM 模块,然后安装了新的 Az 模块。但这样做似乎会破坏旧版 Azure 模块。似乎 Azure 模块和 AzureRM 之间存在依赖关系。 运行 任何服务管理命令,例如 "Get-AzureService" 结果如下:

PS C:\WINDOWS\system32> Get-AzureService
Get-AzureService : Exception has been thrown by the target of an invocation.
At line:1 char:1
+ Get-AzureService
+ ~~~~~~~~~~~~~~~~
    + CategoryInfo          : CloseError: (:) [Get-AzureService], TargetInvocationException
    + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.ServiceManagement.HostedServices.GetAzureServiceCommand

我尝试更新到最新的 Azure powershell 模块 (Update-Module Azure)。这似乎也安装了 AzureRM.profile。

由于该模块不能与 Az 模块同时 installed/used,我不知道如何继续。

如果您还想使用新的 Az 模块,是否无法通过 powershell 使用遗留服务管理 API?

A​​z 模块具有兼容模式,可帮助您在更新到新语法时使用现有脚本。在你想在新的 Az 会话中 运行 AzureRM 命令之前,尝试 运行 Enable-AzureRmAlias cmdlet 启用兼容模式。

您可以从 migrating existing scripts to Az

获取更多详细信息