Azure PowerShell Select-AzureSubscription - ошибка: имя подписки не существует

Я только что установил последнюю версию PowerShell 1.1 и слежу за этой записью в блоге, чтобы добавить обратный DNS к существующей виртуальной машине Linux, которую я использую.

https://azure.microsoft.com/en-us/blog/announcing-reverse-dns-for-azure-cloud-services/

Мне удалось войти в систему и запустить Get-AzureRmSubscription, чтобы увидеть свои подписки:

SubscriptionName : Visual Studio Premium with MSDN
SubscriptionId   : XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
TenantId         : XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

SubscriptionName : Visual Studio Enterprise with MSDN
SubscriptionId   : XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX
TenantId         : XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

Если я попытаюсь запустить команду Set-AzureService, появится сообщение об ошибке, что мне нужно установить подписку по умолчанию.

я пробовал

Select-AzureSubscription -Default 'Visual Studio Enterprise with MSDN'

Select-AzureSubscription -Default "Visual Studio Enterprise with MSDN"

Select-AzureSubscription -Default 'Visual Studio Premium with MSDN'

Select-AzureSubscription -Default "Visual Studio Premium with MSDN"

Я даже пробовал просто запустить Select-AzureSubscription, а затем ввести имя подписки при появлении запроса, без кавычек, одинарных и двойных кавычек, и не смог заставить это работать.

Я все время получаю сообщение об ошибке вроде «Имя подписки« Visual Studio Enterprise с MSDN »не существует».

Я также пробовал сделать это, используя «Select-AzureSubscription -SubscriptionID» с указанными идентификаторами подписки, с аналогичными результатами.

Что я делаю неправильно?


person jon_s_lim    schedule 23.01.2016    source источник
comment
Спасибо, Дмитрий - сначала не получилось, но после добавления-AzureAcount все нормально   -  person jon_s_lim    schedule 23.01.2016
comment
@Dmitry,, да, у меня тоже заработало после Add-AzureAccount.   -  person ಅನಿಲ್    schedule 03.10.2016


Ответы (3)


Если вы используете Resource Manager, правильный командлет:

Get-AzureRmSubscription –SubscriptionName "<name>" | Select-AzureRmSubscription

или просто используйте -SubscriptionId вместо -SubscriptionName.

Select-AzureSubscription используется для управления классическими ресурсами. Чтобы это работало, вам также необходимо добавить классические учетные данные, используя:

Add-AzureAccount
person Bruno Faria    schedule 23.01.2016
comment
Спасибо, Бруно. После запуска Add-AzureAccount я смог успешно выполнить команду Select-AzureSubscription без ошибки. - person jon_s_lim; 23.01.2016
comment
Кроме того, если у вас есть какие-либо советы по запуску Set-AzureService / Get-AzureService, это будет полезно. Чтобы проверить настройки моей виртуальной машины, я попытался запустить Get-AzureService myvmname (где виртуальная машина находится на myvmname.cloudapp.net), но получил. Размещенная служба не существует. - person jon_s_lim; 23.01.2016
comment
есть путаница относительно ARM и ASM. ARM - это новый способ управления ресурсами в Azure, который можно создавать и визуализировать только с помощью нового портала или с помощью командлетов PowerShell azureRM. Командлеты, такие как get-azureservice, относятся к модели ASM. Если вы получаете службу, которая не существует, это, вероятно, связано с тем, что вы развернули свою виртуальную машину с помощью ARM, который не использует облачные службы для виртуальных машин, поэтому get-azureservice бесполезен. Попробуйте Get-Command -Module AzureRM.Resources | Get-Help | Имя форматной таблицы, краткое содержание - person Bruno Faria; 24.01.2016
comment
Я создал виртуальную машину год назад, в январе 2015 года, поэтому предположил, что ARM. С помощью команд я запустил Get-AzureRmResource и увидел что-то вроде: Name: vmname ResourceId: /subscriptions/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX/resourceGroups/vmname/providers/Microsoft.Classourcemachpename/Microsoft. Microsoft.ClassicCompute / virtualMachines ResourceGroupName: vmname Расположение: westus SubscriptionId: XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX В статье кое-что видел о настройке обратного свойства DNS для ресурса общедоступного IP-адреса - есть идеи, какую команду использовать? - person jon_s_lim; 24.01.2016
comment
Не обращайте внимания на последний комментарий - похоже, моя виртуальная машина была связана с моей учетной записью Visual Studio Premium, но я установил подписку по умолчанию на Visual Studio Enterprise. После переключения подписки по умолчанию команды Get / Set-AzureService работали отлично. Что также означает, что я использую ASM. Спасибо! - person jon_s_lim; 24.01.2016
comment
большой!! если вы видите ресурсы в классическом портале, то это ASM :) - person Bruno Faria; 24.01.2016
comment
Оператор Add-AzureAccount имеет решающее значение при работе с классическими службами. Я пытался развернуть облачную службу с расширениями. Select-AzureRmSubscription в этой ситуации не работал. Однако как только я запустил командлет Add-AzureAccount перед Select-AzureSubscription, все заработало нормально. - person user3613932; 24.01.2017

Проблема, с которой вы столкнулись, заключается в том, что параметр «по умолчанию» обесценился.

если ты бежишь

Select-AzureSubscription -SubscriptionName "Visual Studio Premium with MSDN" `
                         -Default "Visual Studio Premium with MSDN"

Ты получаешь -

ВНИМАНИЕ! Текущие параметры и параметры по умолчанию устарели. Select-AzureSubscription всегда обновляет подписку по умолчанию

Если ты просто убежишь

 Select-AzureSubscription -SubscriptionName "Visual Studio Premium with MSDN"  

Вы должны получить желаемый результат.

person Michael B    schedule 23.01.2016
comment
Спасибо, Майкл. К сожалению, я все еще получаю то же сообщение об ошибке. Похоже, в моем случае также понадобился Add-AzureAccount. - person jon_s_lim; 23.01.2016
comment
Однако вы были правы, что -Default устарел, и мне пришлось использовать флаг -SubscriptionName - person jon_s_lim; 23.01.2016
comment
Кроме того, если у вас есть какие-либо советы по запуску Set-AzureService / Get-AzureService, это будет полезно. Чтобы проверить настройки моей виртуальной машины, я попытался запустить Get-AzureService myvmname (где виртуальная машина находится на myvmname.cloudapp.net), но получил. Размещенная служба не существует. - person jon_s_lim; 23.01.2016

  • Connect-AzureRmAccount затем войдите в Azure как обычно
  • Запустите командлет Get-AzureRmSubscription –SubscriptionName "<name>" | Select-AzureRmSubscription (см. Ответ @Bruno Faria)
person Chris Halcrow    schedule 15.11.2020