问题标签 [dsc]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
powershell - 如何获取有关 Azure VM 上 DSC 执行的反馈?
我刚刚完成了使用 DSC 将我们的产品自动发布到 Azure 虚拟机的初始测试阶段,特别是使用本文中描述的命令,这些命令是 Azure PowerShell SDK 的一部分。
我可以使用 PowerShell 很好地推送 DSC 配置,但由于此过程是自动化的,我想获得有关配置过程进展情况的反馈。当我打电话时Update-AzureVM
,我得到了一个好的结果,但是 DSC 配置在那之后发生了,异步的,我不知道它是怎么回事,除非我登录到机器(或者查看现在显示这个的更新的 Azure 门户)。
如果配置失败,我希望我的自动化过程失败。如何从我的脚本检查配置状态并优雅地检测成功或失败?
powershell - 带有大包的 Set-AzureVMDscExtension 会导致 PowerShell DSC 扩展中的内存使用量过大
Publish-AzureVMDscConfiguration -> Set-AzureVMDscExtension -> Update-AzureVM
我终于设法通过 Azure PowerShell SDK 方法(尤其是组合)使用 Desired State Configuration 来自动化我们的发布过程。
在考虑了一段时间以将我的构建输出发送到 VM 可以访问的某个地方之后,我最终采用了将我的构建 drop 附加到配置包中的策略,该配置包被上传到 Azure 存储。
我现在的问题是,一旦 VM 中的 PowerShell DSC 扩展开始下载该包,它的内存消耗就会飙升。当我打开任务管理器时,我可以看到新创建的 PowerShell 进程从大约 30 兆字节到 300 字节,再到 1.3GB,完全破坏了我的虚拟机。
昨天下午,我下班让它处理,但是当我今天登录到 VM 时,包含我的构建输出的内部 zip 文件在 DSCWork 文件夹中有 0 个字节。我的问题是,即使它最终工作,它也需要很长时间并且使我的虚拟机无用......我什至无法在远程访问的窗口之间切换,因为机器完全卡在 100% 的 RAM 使用率.
为什么 PowerShell 会占用如此多的内存和时间来下载我的配置包?它只有 60MB 的压缩包,大约 200MB 的解压包。我能做些什么来防止这种情况发生吗?
更新:
我刚才测试了它,它终于正确完成了。花了一个多小时,但文件在那里......虽然这是不可接受的。
powershell - PowerShell:如何安装 DSC Resource Kit Wave 8 模块?
我正在尝试按照这篇技术网文章在 Windows 2012 R2 机器上设置 DSC 拉取服务器:
http://technet.microsoft.com/en-us/library/dn249913.aspx
但是我就是无法让模块工作。安装说明说:
要安装所有 DSC 资源工具包模块,请解压缩下面的内容
要确认安装运行
Get-DSCResource
以查看此页面上的所有资源都在列出的 DSC 资源中。
所以我复制了“DSC Resource Kit Wave 8 10282014”文件夹的C:\Program Files\WindowsPowerShell\Modules
内容,现在看起来如下:
然后我重新启动了我的 PowerShell 控制台以确保它正在重新加载$env:PSModulePath
,顺便说一下(手动添加换行以获得更好的可读性):
所以这里的一切都是默认的。但是get-module -ListAvailable
,只是不听上述任何模块,例如xPSDesiredStateConfiguration
。此外,该Get-DscResource
cmdlet 不会返回此模块附带的任何资源(尤其xDSCWebService
是我正在寻找的用于设置拉取服务器的 DSC 资源)。
如果我手动将内容复制xPSDesiredStateConfiguration\DSCResources\*
到模块路径文件夹之一,我确实会看到 DSC 资源。但是,拉服务器设置脚本 ( Sample_xDscWebService.ps1
) 失败。打开编辑器,它向我显示了一个语法错误,靠近:
我只是无法弄清楚我在这里做错了什么。那么,如何安装 DSC 资源工具包?
powershell - 如何使用 xWebConfigKeyValue 设置多个 AppSettings 值?
我正在尝试使用xWebConfigKeyValue
DSC 模块的资源xWebAdministration
在我们的应用程序的 web.config 文件上设置多个值。这是我们配置的摘录,其中包含围绕 web.config 更改的主要活动:
但是当我尝试运行配置时,出现以下错误:
Add-NodeKeys:键属性组合“C:\Company\ManagementPortal::AppSettings”与节点“myNode”中资源“xWebConfigKeyValue”的键“WebsitePath,ConfigSection”重复。请确保节点中每个资源的关键属性都是唯一的。在 line:160 char:9 + Add-NodeKeys $keyValues $keyNames $keywordName + ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~ + CategoryInfo : InvalidOperation: (:) [Write-Error], InvalidOperationException + FullyQualifiedErrorId : DuplicateKeyInNode,Add-NodeKeys
看到错误后,我查看了模块 schema.mof 文件,并注意到 appSettings 键不是配置的键C:\Program Files\WindowsPowerShell\Modules\xWebAdministration\DSCResources\MSFT_xWebConfigKeyValue\MSFT_xWebConfigKeyValue.schema.mof
:
由于只有站点路径和配置部分是键,因此我不能有多个资源实例指向同一个 appSettings 块但具有不同的 appSetting 键。那么如何配置多个 appSetting 键呢?
powershell - 如何从 DSC 脚本中的 smb 共享中获取一些文件?
我正在尝试从我的自定义 dsc 脚本中的共享中复制一个文件。下面的代码在 powershell 中运行良好,但在 dsc 资源中不起作用。
Powershell 4/5 具有用于从 smb 共享获取文件的本机命令行开关?或者任何变种?
powershell - 如何在 powershell DSC 中正确写入参数
我创建了自定义 DSC 模块。我在 DSC 资源中只有两个值,其中一个是二维数组:
我创建了 ChangeXML.schema.mof,它描述了变量。所以,我不知道如何写数组。你能帮助我吗?
powershell - PowerShell:对模块的更改没有效果 - 需要某种重新编译?
我目前正在使用 DSC 资源工具包第 8 波设置 DSC 拉服务器。
不幸的是,该模块MSFT_xDSCWebService.psm1
有一个错误,并在使用另一个语言环境时抛出异常,然后“en”正在使用中。
异常消息告诉我它正在寻找resource.dll
在错误位置调用的文件。因此,我对模块进行了更改,因此它看起来在正确的位置。
但是,更改没有任何效果,甚至 aWrite-Host "Test...
也没有出现在输出中。是否有某种需要刷新的缓存?
powershell - 使用 PowerShell cmdlet 设置 MSMQ ACL 时遇到问题
我的 MSMQ 队列由 PowerShell DSC 引擎创建。我可以看到创建的队列。由于 DSC 引擎从 SYSTEM 帐户运行,因此队列所有者也设置为 SYSTEM。当我尝试从 PowerShell 控制台设置 MSMQ ACL 时,我不断收到以下错误:
我也无法使用自定义 DSC 资源设置 MSMQ ACL,这基本上只能从 SYSTEM 帐户执行相同的操作。所以问题是有没有办法使用 Set-MSMQQueueACL cmdlet 从 PowerShell DSC 引擎中设置 MSMQ 权限。或者至少如果我能够解决前面提到的错误,那么也许我也能够解决 DSC 问题。我正在运行 Windows 2012 和 WMF 4.0。
提前致谢。
comments - MOF 注释分隔符是否有规范
此 MOF 格式规范充斥着 C 样式(“//”)注释,但实际 MOF 文件注释的允许结构未显示在 BNF 中(不正确地使用 BNF,IMO:“aliasIdentifer = “$”IDENTIFIER //没有空格!”)。
我发现了许多使用 MOF 文件的示例:
但这些不在定义 MOF 格式本身的范围内。
powershell - 用于 iis 上 iis 服务可用性的 dsc 命令
我开始在 Power Shell 上使用 DSC 配置,使用 Windows PowerShell ISE 进行部署活动。我有一个安装了 IIS 的 Windows 2012 Web 服务器。在这个 IIS 服务器上,我安装并运行了 12 个服务。
现在我正在更新此 IIS 上的一项服务的代码位。在我这样做之前;如果 IIS 正在运行,我想停止它。有什么命令吗?
我尝试了以下命令,但它只检查 IIS: