问题标签 [powershell-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 - Import-DscResource 找不到包 cChoco
我正在尝试编写一个将发布到 Azure 虚拟机的 DSC 脚本。到目前为止,我已经能够完成一些基本的事情,比如启用 Windows 功能和创建目录。但现在我想在天蓝色的虚拟机上安装巧克力。所以这是我的脚本
在我的本地机器上,我使用的是 PowerShell 5.0,在 ISE 中,我在Import-DscResource
说找不到 moduleName cChoco 下得到红色波浪线。我知道这是一个关键字,应该在配置部分有效。当我这样做时,Publish-AzureVMDscConfiguration
我得到一个解析错误
powershell - 仅当通过 LCM 运行时,使用 PowerShell DSC 安装 exe 才会返回退出代码
我正在尝试使用 PowerShell DSC 安装 HPC Pack 2012 R2 U3 设置。以下代码工作并安装软件:
但是,当我使用 Script DSC 配置运行相同的操作时,它会成功,但会很快返回退出代码 10:
这与Package
资源使用的代码相同,但失败是因为返回了错误代码 10 而不是 0(这是成功安装包时的情况,如最上面的代码示例)。该设置不会产生任何输出或日志文件。
有任何想法吗?我难住了。
powershell - 通过 Azure 资源管理器应用多个 DSC
是否可以通过 Azure 资源管理器将多个 DSC 配置应用于一个虚拟机?
目前我正在使用这样的东西:
如果没有,你能自动合并多个 DSC 吗?
场景是:
- 拥有多个 DSC
- 一台用于 IIS + ASP.Net 的 DSC
- 一个 DSC 创建 Site1
- 另一个创建 Site2 的 DSC
- 在 Dev 中将 Site1 和 Site2 部署到一台机器上
- 在生产中部署到单独的机器,甚至可能在可用性集中......
- (准备将来使用单独的容器)
powershell - 拉取配置导致多个组资源出现奇怪行为
使用 Azure 自动化拉取 DSC 服务,我有一个生成多个Group
资源的配置,以确保帐户是 IIS_IUSRS 组(应用程序池标识)的成员。这些组资源是通过$ConfigurationData
在编译时循环提供的内部数据来生成的。这是按网站完成的。举个例子:
应用时,LCM 和 WMI 服务会变得不稳定并产生多个错误——特别是 DSC 引擎错误 28 和引擎错误 2147749939。
我可以应用相同的技术,如果在 PUSH 模式下(与 Pull)在本地使用 Start-DSCConfiguration 应用,则配置成功。我能够让 PULL 与 Azure 自动化 DSC 服务一起工作的唯一方法是将所有所需的成员收集到一个列表中并使用 1 个Group
资源:
非常感谢任何想法或帮助。
2016 年 11 月 21 日更新:
这是我在不使用唯一groupname
值的情况下在本地生成和应用的配置。机器上本地只有 1 个 IIS_IUSRS 组,我们不想要多个。所以这里是在本地运行时成功应用的配置(真正的配置从 Azure 自动化中提取信用,只是为了简单起见在这里重用):
以下是 DSC 引擎的结果:
azure - Register-AzureRmAutomationDscNode 返回 BadRequest
我正在尝试使用 Register-AzureRmAutomationDscNode powershell 命令在 Azure VM 上注册 DSC 配置。
我看到以下输出:
Body: { "error": { "code": "InvalidTemplate", "message": "部署模板验证失败:'参数文件中的模板参数'timestamp'无效;它们不存在于原始模板中,并且因此无法在部署时提供。此模板唯一支持的参数是 'vmName, location, modulesUrl, configurationFunction, registrationKey, registrationUrl, nodeConfigurationName, configurationMode, configurationModeFrequencyMins, refreshFrequencyMins, rebootNodeIfNeeded, actionAfterReboot, allowModule Overwrite'。请参阅https ://aka.ms/arm-deploy/#parameter-file了解使用详情。'。” } }
该命令直到最近才正常工作。
cmdlet 是否损坏/更新?有没有其他人看到这个错误?
谢谢!
powershell - DSC 资源 xADUser 登录服务器失败
我在域控制器上运行 DSC 脚本以添加用户。在我的情况下,xADUser 失败并出现以下错误。
这是添加用户的脚本部分。
dsc - 使用 DSC 资源配置 HKEY_CURRENT_USER 实际上会更新 HKEY_USERS\.DEFAULT
以下 DSC 声明写入注册表项 HKEY_USERS.DEFAULT\Console 而不是 HKEY_CURRENT_USER\Console。为什么?
powershell - 如何制作资源级变量
例如,假设我有一个脚本资源:
$tools
为了避免代码重复,我想退出这两个单独的函数。我很高兴能够添加$tools
到我的脚本资源并在这两个函数之间共享它,而不必定义它两次。
但是,尝试这样做会给我一个错误:
发现资源“脚本”的属性名称无效。属性名称必须是简单的字符串,并且不能包含变量或表达式。用一个简单的字符串替换 '$tools'。
如何共享此代码?
powershell - 使用 set-azuremrmvmcustomscriptextension 执行 DSC 文件
我正在尝试通过 Azure 自动化运行手册中的 set-azuremrmvmcustomscriptextension 执行 DSC 脚本。
我不想使用 Azure 自动化的 DSC,因为我的运行手册中还有其他操作需要执行(非 DSC),并且我不想使用 set-azurermvmdscextension,因为我的文件不在 Blob 存储中,但可以通过set-azurermvmcustomscriptextension 提供的 fileURI 开关。
当我通过 set-azurermvmcustomscriptextension 运行 DSC 文件 (.ps1) 时,我没有收到任何错误,它会生成本地 .mof。但是,它实际上并没有在配置括号内执行任何操作,也就是需要运行的 DSC PowerShell 代码。
.ps1 具有应用配置的 DSC 命令。如果我在通过 PowerShell ISE 远程运行到服务器时运行脚本,它运行,只有当我从 set-azurermvmcustomscriptextension 调用它时,它才不会执行配置(但仍会创建 mof)。
是否存在权限问题?我相信 DSC 在系统级别运行,并且在导入模块等时生成 mof/no 错误没有问题。这就像它只是忽略了配置。
更新 1
经过更多测试,我们发现当我们在 Set-AzureRMVMCustomScriptExtension 中使用 -Argument 时,无法运行 DSC 配置。删除它允许 DSC 配置运行......但是,我们需要从 Runbook/Set-AzureRMVMCustomScriptExtension 传递正确的参数,以使其具有正确的值。
这是我们找出 Args 的地方:如何将多个参数传递给 Set-AzureRmVMCustomScriptExtension?
powershell - IIS 7.5 中的 xWebSite LogPeriod 错误
使用 PowerShell DSC 在 IIS 7.5 中设置网站的日志文件翻转计划时出现错误。以下脚本
给我错误:
每小时不是 Int32 的有效值
当目标设置已经是 Hourly 并且在 IIS 8.0 中没有发生错误时,我没有收到错误消息。我的环境是:
- Windows Server 2008 R2 标准 6.1(内部版本 7601:Service Pack 1)
- IIS 7.5
- 电源外壳 5.0
- xWebAdministration 1.17.0.0
有任何想法吗?谢谢!