Команда Get-azVM была найдена в модуле Az.Compute, но модуль не может быть загружен

Я использовал модуль Az в сценарии PowerShell, который запускается из ядра PowerShell, но при выполнении скрипта из приложения (.Net core SDK 2.1) возникает ошибка.

$ VMExistanceCheck = Get-azVM -ResourceGroupName $ VMResourceGroup -Name $ NewComputerName -ErrorAction SilentlyContinue

Я проверил, что модуль Az.Compute был импортирован туда.

Я также добавил Import-Module Az.compute -verbose -force в скрипт.

У меня возникла следующая ошибка при вызове сценария из приложения, использующего пространство выполнения (System.Management.Automation, Version = 6.1.0.0):

System.Management.Automation.RuntimeException: команда Get-azVM была обнаружена в модуле Az.Compute, но модуль не может быть загружен. Для получения дополнительной информации запустите Import-Module Az.Compute. ---> System.Management.Automation.CommandNotFoundException: команда Get-azVM была обнаружена в модуле Az.Compute, но модуль не может быть загружен. Для получения дополнительной информации запустите «Import-Module Az.Compute».

Get-Module -ListAvailable показывает, что модуль Az.Compute доступен, но пока команда import-module Az.Compute выполняется с использованием Powershell 6, ничего не импортируется.


person SRoy    schedule 26.03.2019    source источник
comment
Вы можете подробнее рассказать о том, какую ошибку вы получаете? Если все Azure PowerShell не может выполняться? И вы входите в систему перед запуском Azure PowerShell?   -  person Charles Xu    schedule 27.03.2019
comment
Можете ли вы опубликовать полное сообщение об ошибке? ›   -  person HariHaran    schedule 27.03.2019
comment
Вы устанавливаете политику выполнения для своего локального компьютера?   -  person Charles Xu    schedule 27.03.2019
comment
да. Я уже установил неограниченный   -  person SRoy    schedule 27.03.2019
comment
Неужели нельзя использовать только модуль Az.compute?   -  person Charles Xu    schedule 27.03.2019
comment
Add-AzAccount и Login-AzAccount выполняются внутри скрипта перед командой Get-azVM   -  person SRoy    schedule 27.03.2019
comment
Вы можете попробовать импортировать модуль Az.compute перед запуском скрипта.   -  person Charles Xu    schedule 27.03.2019
comment
«Import-Module Az.compute -verbose -force» находится в начале скрипта. Я также добавил «Import-Module -Name Az.Accounts», который работает нормально.   -  person SRoy    schedule 27.03.2019


Ответы (2)


Install-Module -Name Az -AllowClobber -Scope CurrentUser

Выполните эту команду. Перезапустите Powershell. Запустите import-module az.compute снова

person hansotto    schedule 15.05.2019

Я проверил журнал PowerShellCore / Operational из средства просмотра событий и обнаружил следующую ошибку:

Сообщение об ошибке = не удалось загрузить файл или сборку Microsoft.WindowsAzure.Storage, версия = 9.3.0.0, культура = нейтральная, PublicKeyToken = 31bf3856ad364e35. Не удалось найти или загрузить определенный файл. (Исключение из HRESULT: 0x80131621) Идентификатор полной ошибки = System.IO.FileLoadException, Microsoft.PowerShell.Commands.ImportModuleCommand

Я установил Microsoft.WindowsAzure.Storage, и, наконец, запускается сценарий PowerShell, и команда Get-AZVM успешно выполняется.

person SRoy    schedule 04.04.2019
comment
Этот пакет устарел. См. nuget.org/packages/WindowsAzure.Storage. Похоже, что он был заменен несколькими пакетами Microsoft.Azure.Storage.Blob, Microsoft.Azure.Storage.File, Microsoft.Azure.Storage.Queue и Microsoft.Azure.Storage.Common. - person Alexander D'Attore; 20.05.2020