为什么 DSC 找不到已安装的资源?

spl*_*its 3 powershell dsc

我正在尝试应用使用来自已安装模块的资源的 DSC 配置。但是,当我运行时Start-DscConfiguration,出现此错误:

PowerShell DSC 资源 ******** 不存在于 PowerShell 模块路径中,也未注册为 WMI DSC 资源。
+ CategoryInfo : InvalidOperation: (root/Microsoft/...gurationManager:String) [], CimException
+fullyQualifiedErrorId : DscResourceNotFound

但是,当我登录服务器并运行时Get-DscResource,缺少的资源在那里。

为什么DSC找不到资源?

spl*_*its 6

DSC 资源所属的模块版本在我的本地计算机和服务器之间有所不同。在我的本地计算机上,我的配置被转换为 MOF 文件,我有 2.2.0 版(为简洁起见,代码被截断):

instance of ******** as $********1ref
{
 ModuleName = "********";
 ModuleVersion = "2.2.0";
};
Run Code Online (Sandbox Code Playgroud)

但是服务器的版本是 2.1.0:

> Get-Module -ListAvailable

    Directory: C:\Program Files\WindowsPowerShell\Modules


ModuleType Version    Name                                ExportedCommands
---------- -------    ----                                ----------------       
Script     2.1.0      ********                            ********
Run Code Online (Sandbox Code Playgroud)

此特定模块可在PowerShell Gallery 上找到。呼叫Update-Module获得了我的服务器上的最新版本。我也可以降级我的本地计算机。