没有指定默认订阅。使用Select-AzureSubscription -Default <subscriptionname>设置默认订阅

时间:2016-06-19 14:17:03

标签: azure azure-powershell

尝试执行Start-AzureService时,我一直遇到上述错误。

执行Get-AzureAccount时提示的以下信息:

Id                    Type Subscriptions                        Tenants                               
--                    ---- -------------                        -------                               
Me@outlook.com User   12345678-1234-5678-9012-345678901235 {12345678-1234-5678-9012-345678901235} 

执行Get-AzureSubscription时提示以下信息:

SubscriptionId            : 12345678-1234-5678-9012-345678901235
SubscriptionName          : My Production (Pay-As-You-Go)
Environment               : MyCloud
DefaultAccount            : Me@outlook.com
IsDefault                 : True
IsCurrent                 : True
TenantId                  : 12345678-1234-5678-9012-345678901235
CurrentStorageAccountName :  


Select-AzureSubscription : Parameter set cannot be resolved using the specified named parameters.
当我尝试按照建议的命令时,会提示

Select-AzureSubscription -Default "My Production (Pay-As-You-Go)"

2 个答案:

答案 0 :(得分:13)

使用此选项来选择您的默认订阅:

Select-AzureSubscription -Default -SubscriptionName "My Production (Pay-As-You-Go)"

您也可以选择使用-SubscriptionId(和GUID)而不是名称。

有关Select-AzureSubscription命令行开关的更多信息;输入Get-Help Select-AzureSubscription

如果这不起作用,请先尝试先运行,然后再选择订阅:

 Add-AzureAccount 

如果您仍然遇到问题,请进行更新:

如果您使用AzureRM /旧cmdlet(或只是AzureRM)并且仍然面临问题,我强烈建议您检查是否有多个版本的AzureRM.Profile模块。当我在Program Files下安装了一个版本而在我的用户配置文件(或PSModulePath中的其他地方)下安装了一个版本时,我已经多次遇到过这种情况。

列出安装的模块/版本:

Get-Module AzureRm.Profile -ListAvailable

如果您有多个实例和版本,则可能会对某些cmdlet造成一些问题。

答案 1 :(得分:7)

当我尝试${sql.args.3.value:toString():equals('t'):ifElse("TRUE","FALSE")} 时,它给了我错误&#34;订阅不存在&#34;当我传递100%正确的订阅名称或订阅ID时,我在Azure门户网站和powershell上找到:

Select-AzureSubscription

添加Azure帐户为我解决了这个问题:

$account = Login-AzureRmAccount
$account.Context.Subscription.SubscriptionId
$account.Context.Subscription.SubscriptionName