首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >导致PowerShell错误的WBEM文件资源

导致PowerShell错误的WBEM文件资源
EN

Stack Overflow用户
提问于 2015-03-03 01:14:59
回答 2查看 321关注 0票数 1

我正在尝试使用File资源来复制大量文件,其中大约20,000个文件跨越3000个目录。虽然DSC确实可以部署这些文件,但我在尝试测试这些文件时遇到了问题。如果我在资源中只有几个文件,一切都很好,但是如果我在那个中断中加载了我的全集。我可以在目标节点上获取Test-DSCConfiguration并获得True结果(在将测试服务器上的内存从4 16增加到16 16之后),但是Get-DSCConfiguration抛出了这个错误:

Get-DscConfiguration :已超过WBEM服务器限制(例如,内存、连接等)。第1行:1 char:1 + Get-DscConfiguration ++ CategoryInfo : ResourceBusy:(MSFT_DSCLocalConfigurationManager:root/Microsoft/...gurationManager) Get -DscConfiguration,CimException + FullyQualifiedErrorId : MI RESULT 27,Get -DscConfiguration

配置很简单:

File ServerBox { Ensure = "Present" Type = "Directory" Recurse = $true MatchSource = $true Force = $true Checksum = "modifiedDate" SourcePath = "\\DevOps\ServerBox" DestinationPath = "D:\ServerBox" }

起初我认为问题出在内存上,因为我甚至不能让Test-DSCConfiguration运行,但这一次抛出了内存错误,所以一旦我向系统添加了更多内存,我至少可以从测试中获得True结果。但是Get-DSCConfiguration仍然不起作用。

有人对WBEM错误有什么见解吗?

EN

回答 2

Stack Overflow用户

发布于 2015-03-03 03:41:00

诚然,这只是一种猜测,但我认为Get-DSCConfiguration可能只是没有经过足够的测试,正在达到某种内部限制。

问题是,Get-DSCResource实际上并没有被用作部分DSC (意思是LCM不调用它,PowerShell在生成配置时不使用它,Start-DSCConfiguration不使用它,等等)。

只有当你手动调用它时,它才会被调用,所以在很多情况下,它现在只是一个存根。

在编写自定义资源时,我实际上是想让Get-变得有用;通常是通过让Set-和/或Test-在内部调用Get-来实现,但这样做可能是一个挑战。

因此,给定的资源没有经过Get-DSCConfiguration的良好测试是可行的。

抱歉,我对错误本身没有任何见解。File资源不是脚本资源;我认为它实际上是本机编译的代码,所以很可能只有Microsoft可以回答这个问题。

票数 0
EN

Stack Overflow用户

发布于 2015-03-11 22:06:29

您可以尝试增加WSMAN会话限制。以下是有关这方面的一些信息:http://blogs.msdn.com/b/powershell/archive/2010/05/03/configuring-wsman-limits.aspx

MaxMemoryPerShellMB增加到更大的值,然后尝试相同的资源。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28815652

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档