Получить Azure VM Detail от PowerShell

Я пытаюсь запустить команду Get-AzureVM PowerShell, она работает нормально, но не возвращает никакого вывода.

И попробовал в следующем вкусе, но все же пустой результат какой-нибудь идеи?

Get-AzureVM -Name "vmname" |Select-Object name,instancesize,location

Ответ 1

Сначала вы должны позвонить Select-AzureSubscription "subscription name".

Вероятно, он не соответствует подписке, в которой нет виртуальных машин.

Для просмотра вызовов текущей подписки:

Get-AzureSubscription | select SubscriptionName

Ответ 2

Собственно, ответ выше только полуправильный.

Это заставило меня вытащить мои вирулентные волосы, пытаясь сделать автоматизацию (что потребовало 7 часов ручной подтасовки, чтобы работать!).

Просто у вас есть два типа виртуальной машины в Azure; Classic и Resource Manager.

Если вы Switch-AzureMode -name AzureServiceManagement, затем используйте Get-AzureVM, вы перечислите все классические виртуальные машины, которые вы создали.

Если вы Switch-AzureMode -name AzureResourceManager, затем используйте Get-AzureVM, вы перечислите всю созданную вами диспетчер ресурсов (или новую).

И помните, что если вы пытаетесь сделать автоматизацию, вам нужна виртуальная машина в новом режиме, доступном через портал, ваша старая виртуальная машина (классика), которую вы создали с помощью управления, не отображается в этом режиме, и вам придется воссоздайте их.

Ответ 3

Azure имеет два типа системы управления: AzureServiceManagement (ASM) и AzureResourceManager (ARM)

Чтобы контролировать эти два разных типа систем управления, вы должны переключаться между ними, как описано на главной странице страницы проекта Azure Powershell Github, но это справедливо для версий azure powershell ниже 1.0.0, вы можете найти больше объяснений в здесь

Для тех, кто заинтересован в управлении ARM (AzureResourceManager) с версией powershell версии более чем 1.0.0, они должны использовать все командлеты со следующим форматом: [Verb]-AzureRm[Noun], например New-AzureVm становится New-AzureRmVm, в нашем case Get-AzureVM стал Get-AzureRmVm

Вкратце:

Ответ 4

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

Чтобы решить проблему, я выполнил следующую команду powershell script.

Switch-AzureMode -Name AzureResourceManager

Ответ 5

Переключение режима Azure Powershell между AzureServiceManagement и AzureResourceManger является возможным решением, если ваш script использует устаревшие функции, а также новые командлеты Azure Resource Manager. Коммутатор необходим только для Microsoft Azure Powershell версии 0.9.8 или старше.