Назад | Перейти на главную страницу

Почему DSC не может найти установленный ресурс?

Я пытаюсь применить конфигурацию DSC, которая использует ресурс из установленного модуля. Однако когда я бегу Start-DscConfiguration, Я получаю эту ошибку:

Ресурс PowerShell DSC ******** не существует в пути к модулю PowerShell и не зарегистрирован как ресурс WMI DSC.
+ CategoryInfo: InvalidOperation: (root / Microsoft / ... gurationManager: String) [], CimException
+ FullyQualifiedErrorId: DscResourceNotFound

Однако, когда я вхожу на сервер и запускаю Get-DscResource, недостающий ресурс является там.

Почему DSC не может найти ресурс?

Версия модуля, частью которого являются ресурсы DSC, различалась на моем локальном компьютере и на сервере. На моем локальном компьютере, где моя конфигурация преобразуется в файлы MOF, у меня была версия 2.2.0 (код для краткости вырезан):

instance of ******** as $********1ref
{
 ModuleName = "********";
 ModuleVersion = "2.2.0";
};

Но на сервере была версия 2.1.0:

> Get-Module -ListAvailable

    Directory: C:\Program Files\WindowsPowerShell\Modules


ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------       
Script     2.1.0      ********                            ********

Этот конкретный модуль доступен на Галерея PowerShell. Вызов Update-Module получил последнюю версию на свой сервер. Я также мог бы понизить версию своего локального компьютера.

Я столкнулся с той же проблемой ... оказалось, что моя проблема была не в несоответствии версии модуля, а в несоответствии версии Powershell. Моя рабочая станция - это версия 5, но конечной точкой была версия 4 (2012 R2 из коробки).

После установки WMF 5.1 на удаленный сервер он распознал и установил IIS с помощью модуля xWebAdministration.

До этого он жаловался, что не мог его найти. Переменная пути была такой же на другом настроенном веб-сервере. Единственным отличием была версия Powershell.