我创建了一个基于类的 DSC 资源作为 Powershell 模块,并成功将其上传到
Azure Automation
/Modules
。它有一个绿色图标,似乎添加成功。现在我想在 State Configuration
文件中使用这个模块。所以我创建了这样的配置:
Configuration Temp01 {
Import-DscResource -ModuleName 'MyModule' -ModuleVersion 1.0.0
Node 'localhost' {
MyResource Test01 {
Param = ...
}
}
}
在 Azure 上编译此配置
失败并出现错误:
Exception calling "NewScriptBlock" with "1" argument(s): "At line:3 char:5 + Import-DscResource -ModuleName 'MyModule' -ModuleVersion 1. ... +
~~~~~~~ Could not find the module '<MyModule, 1.0.0>'." (At line:3 char:5 + Import-DscResource -ModuleName 'MyModule' -
我该怎么办?我如何在
State Configuration
中使用我的自定义模块?
解决您的问题后,您所遵循的流程和配置设置对我来说很好。检查以下几点可能是冲突的原因。
ModuleVersion
属性与您在配置和 Azure 自动化模块中指定的版本匹配。nx
模块与您的 mymodule
一起导入。如果您使用 PowerShell 库,则必须导入它来编译 DSC 资源。
请参阅 MSDoc 了解更多相关信息。Import-Module -Name 'C:\path\Module.psd1' -ModuleVersion 1.0.0
Virtual machine >> Extensions + applications >> Check the version is matching with your uploaded version
。Set-DscLocalConfigurationManager
命令以应用所需版本之前的 LCM 设置。