问题标签 [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 - 如何获取 Azure DSC 配置以读取名称为参数的自动化帐户变量?
我正在尝试使用模板和 DSC 在 Azure 中自动构建 Windows VM。我的同事熟悉模板但不熟悉 PowerShell,我希望尽可能少地与 DSC 交互或运行 cmdlet。如果我不能用模板做所有事情,我想使用 Azure 门户。
我正在努力寻找一种非 PowerShell 方式将用户和组添加到本地管理员组。我认为最简单的过程是:
该模板有一个名为 的参数
membersOfLocalAdmins
。它的值将是单个字符串,例如mydomain\username,mydomain\groupname...
.该模板在自动化帐户中创建一个变量,名为
membersOfLocalAdmins-*New VM Name*
. 它的值是管理员字符串。DSC 配置需要读取此变量。它当前有一个用于 VM 名称的参数。在 Azure 门户中,我们将转到自动化帐户,选择配置并单击编译。我们看到 VM 名称的提示并键入它,单击 OK。
DSC 配置必须读取名为 的自动化帐户变量membersOfLocalAdmins-*New VM Name*
。然后将变量的值拆分为一个数组,并将其获取到其 Group 资源中。我已经尝试过类似下面的代码,但它不会编译,我认为配置中我可以使用 PowerShell 的唯一位置是脚本资源。有什么办法可以做到这一点,或者有更好的方法吗?
我还遇到了 Azure 门户中的编译 DSC 配置表单无法接受数组的问题。它读取mydomain\username,mydomain\groupname...
为单个字符串。如果我可以在它到达 Group 资源之前使用 PowerShell 将其拆分,那没关系。但是我应该把这个 PowerShell 放在哪里?
我想我将不得不使用脚本资源,将字符串拆分为一个数组并将其添加到管理员自己。凌乱。
powershell - Powershell DSC - 将文件解压缩到远程目标
我的目标是创建一个Powershell DSC配置,以将文件从我的本地计算机解压缩到 Hyper-V Win10 VM上的远程目录(我已经共享了该目标文件夹)。但是,现在,在 .ps1 中插入 VM 凭据仍然存在一些问题。这是我的代码:
谁能建议我在 Powershell 脚本中插入Windows 凭据(远程机器的)?
感谢您的宝贵时间...希望您能提供帮助!
powershell - AWS 目录服务 - 拒绝访问
我正在尝试将此模块用作 AWS 中自动化 AD 的一部分。
脚本
日志
```
笔记
- 我以与 AD 连接的域管理员身份登录服务器。
- 我可以手动添加用户。
- 我可以通过添加用户
New-ADUser
我实际上想通过 CloudFormation 或 Run Command 远程执行此操作,这意味着我可能需要以PSCredential
某种方式合并。我看不出DomainAdministratorCredential
onxADUser
有什么帮助,因为该属性不在xADGroup
...
在我开始推出自己的解决方案之前,任何帮助表示赞赏!
谢谢
azure - 如何从专用网络中在 Azure 自动化中注册 AzureVM
我有一个 azure 虚拟机,刚刚启动,它通过 VPN 连接到我的办公室。NSG 进行管理,使计算机只能通过需要身份验证的本地代理访问 Internet。
设置代理后,以我的用户身份浏览互联网就可以了。
我正在尝试将机器注册到 Azure 自动化中——只是一个安装 IIS 以测试功能的简单脚本——但我无法让它工作。我唯一能想到的是互联网访问限制。
我已将运行 Azure VM 代理的用户更改为我的用户,该用户应该可以访问 Internet,并且是 VM 上的管理员。
这是我要回来的错误:
azure-virtual-machine - 具有模板部署的 Azure VM 扩展 Powershell DSC - 配置重新启动时进程失败
我正在努力通过 Powershell DSC 配置重新启动。这是我的场景:
将 Azure RM 模板部署与 Visual Studio 2017 资源组项目一起使用:
- VM 已成功部署为嵌套(链接)模板
- 接下来,再次作为依赖于 VM 部署的嵌套(链接)模板,创建 Powershell DSC 扩展模板
- 在 Powershell DSC 配置中,应在某个阶段强制重启
- 尝试了两种方案:a)使用带有 Windows Server 2016 Datacenter 的 VM 和b) Windows Server 2012
- 两种情况都报告失败。a)第一个在重新启动时失败。b)然而,第二个似乎重新启动并完成配置,但资源组部署和 VS 输出仍然报告失败。
- 在这两种情况下,错误都是:“DSC 配置‘主’完成但出现错误。以下是前几个:发生 CA 常规错误,未包含在更具体的错误代码中。C”
这是 DSC 配置:
任何帮助将不胜感激,谢谢!
一些更新:
实际上,我的“重新启动”要求是一种解决方法,因为当两个部署一个接一个地作为嵌套模板执行时 - Powershell DSC 失败(如果我单独部署它们,一切正常)。脚本资源使用 NSSM安装Windows 服务后,配置似乎失败。然后我注意到如果在机器上启动重新启动,则配置成功应用。因此,重新启动的解决方法....
powershell - Powershell DSC:如果我们希望进程始终运行,建议是什么
我希望一个进程(exe)始终在机器上运行,即使它重新启动后也是如此。我已经设置了 powershell DSC,目前我将它作为 WindowsProcess 并且在重新启动后没有启动。有人能告诉我在这种情况下推荐的资源是什么吗?
powershell - 如何获取当前 PowerShell DSC 正在执行的所有操作的详细信息?
在系统上,应用了 PowerShell DSC,但我没有应用的原始脚本。如何获取此配置应该执行/当前执行的所有操作的列表?
例如,如果我有原始脚本,我可以看到正在安装哪些程序以及配置正在应用哪些设置,但是如果没有原始脚本,我该怎么做。
我想卸载当前由 DSC 安装的程序,但我无法更新 DSC 以允许删除程序而保留其他部分,因此删除它似乎是唯一的选择。在删除它之前,我想确保它不会做其他重要的事情。我怎样才能做到这一点?
另外,如果我删除了当前的 DSC,是否应用了以前的或未决的 DSC?
powershell - 无法使用 DSC 添加 Windows 登录
构建 Azure VM 并加入域后,我需要将 windows 用户添加到 SQL Server 登录。我为此使用 DSC,代码是
但是,部署失败并出现以下错误。
PowerShell DSC 资源 MSFT_SqlServerLogin 无法执行 Test-TargetResource 功能并出现错误消息:System.InvalidOperationException:无法连接到 SQL 实例“localhost”。+ CategoryInfo : InvalidOperation: (root/Microsoft/...gurationManager:String) [], CimException + FullyQualifiedErrorId : ProviderOperationExecutionFailure + PSComputerName : localhost
看起来 DSC 正在尝试以我要添加的用户身份连接到 SQL 服务器。我的意思是,如果我尝试添加 MyDomain\xxx.zzz,那么我会在 SQL 日志中得到错误
“用户 'MyDomain\xxx.zzz' 登录失败。原因:找不到与提供的名称匹配的登录名。[客户:]”
我究竟做错了什么?
谢谢
powershell - 注册表值设置更改后不生效
我正在使用以下 Powershell DSC 配置来禁用视觉效果。
在我运行 Start-DSCConfiguration 命令后,我可以看到 visualfxsetting 值已更新为 2。但在 GUI(在高级系统属性 -> 视觉效果下)它仍然显示为“让计算机选择最适合你的”而不是“调整以获得最佳性能”。对此有任何想法吗?