Get-AzureDeployment未返回预期结果

时间:2018-11-08 21:01:59

标签: powershell azure-rm

我正在尝试获取所有已部署的Azure云服务,仅查找服务名称及其标签字段。我正在使用cmdlet Get-AzureDeployment,但未返回期望的结果。

使用的cmdlet:  $ getResultForMyService = Get-AzureDeployment -ServiceName“ myservicelistedincloudservice”-插槽“ Production”

输出即时通讯是

  *>Get-AzureDeployment : ResourceNotFound: No deployments were found.
  OperationID : 'a********************074'
    At line:1 char:9
+ $Data = Get-AzureDeployment -ServiceName myservicelistedincloudservice" -Slot "Prod …
+ CategoryInfo : CloseError: (:) [Get-AzureDeployment], ComputeCloudException + FullyQualifiedErrorId : Microsoft.WindowsAzure.Commands.ServiceManagement.HostedServices.GetAzureDeploymentCommand*

在运行Get-AzureDeployment cmdlet之前,我试图确保上下文使用了正确的订阅。但这也没有帮助。

PS C:\ WINDOWS \ system32> set-azurermcontext -SubscriptionName MySubscription

仅供参考,我已经安装了最新版本,并且在执行上述cmdlet之前,我还导入了Azure模块。仅供参考,以下是我的PS版本详细信息:

我还按照MS docs链接中的servicemanagement模块安装说明进行操作,但这也无济于事-https://docs.microsoft.com/en-us/powershell/azure/servicemanagement/install-azure-ps?view=azuresmps-4.0.0

PS C:\ WINDOWS \ system32> $ psversiontable

名称值
---- -----
PSVersion 5.1.17763.1
PSEdition桌面
PSCompatibleVersions {1.0、2.0、3.0、4.0 ...}
BuildVersion 10.0.17763.1
CLRVersion 4.0.30319.42000
WSManStackVersion 3.0
PSRemotingProtocolVersion 2.3
SerializationVersion 1.1.0.1

希望获得列出云服务的任何指针。

1 个答案:

答案 0 :(得分:1)

最后成功了。我点击了此链接https://social.msdn.microsoft.com/Forums/en-US/77d36a5e-9c98-4003-bc52-367c00156b40/how-to-change-subscription?forum=azurescripting

由于此Get-AzureDeployment cmdlet与我使用非rm cmdlet的ASM有关,因此,这里是我遵循的cmdlet和步骤:

步骤1:      Add-AzureAccount

最初,我收到此错误“ Azure服务管理(RDFE)中没有与登录帐户关联的订阅”。和 我将自己添加为共同管理员角色后就摆脱了这一点,尽管我在我的订阅门户网站中拥有所有者角色。

步骤2:     获取Azure订阅

这应该列出所有订阅,并说明哪个是默认订阅(IsDefault)和当前订阅(IsCurrent)。请注意该订阅具有IsCurrent = True或IsDefault = True。请注意,这两个参数已被弃用,并且对于任何订阅都将具有相同的值,也就是说,您不能将IsCurrent = True设置为一个订阅,将IsDefault = True设置为另一个订阅。

步骤3:      Select-AzureSubscription -SubscriptionName mysubscription

当您的mysubscription是当前订阅(IsCurrent = True)时,不需要此cmdlet,否则运行此cmdlet将mysubscription设置为当前订阅。

第4步:      Get-AzureDeployment -ServiceName“ myservicelistedincloudservice”-插槽“生产”

如果此服务(myservicelistedincloudservice)属于mysubscription订阅,则它将返回已设置为IsCurrent = True的结果,否则,您将看到“ ResourceNotFound:找不到部署”。错误。

我们需要确保以与上述相同的顺序执行4个cmdlet,否则您将不知道是什么原因引起的。希望这会帮助某人。