这些文章都讨论了分期,包装和一堆基础设施方面的问题。
是否可以在本地运行脚本,或者(对于远程服务器而言)(更可取!)?
例如,基础设施免费,就像我现在可以运行ssh命令?
是的,你要找的是“推”模式。 而不是设置拉服务器并使用GUID命名文件,您只需针对本地计算机或远程计算机运行Start-DscConfiguration 。
您仍然需要安装Windows Management Framework 4,即使目标是本地节点,目标节点也必须允许传入的WinRM连接。
这与使用SSH不完全相同,因为一旦应用了configuration,它将自动重新应用。 当您安装Windows PowerShell Desired State Configuration Servicefunction时,它将自动设置在拉模式下的LCM。 为了看到这一点,运行Get-DscLocalConfigurationManager 。 您还将看到configuration检查更改频率的设置(默认为30分钟)以及当前configuration重新应用的频率(默认为15分钟)。 一旦实际上推送了一个configuration,一个名为Consistency的计划任务将显示在Task Scheduler Library\Microsoft\Windows\Desired State Configuration ,这个工作实际上是在这里完成的。
我还想澄清一下,您不直接应用您在Powershell中编写的configuration脚本。 无论您是推或拉configuration,您仍然必须首先执行脚本以将其“编译”为MOF文件,这就是所应用的文件。
更好的模拟SSH是Powershell远程处理,它允许您对远程计算机运行代码或在远程计算机上使用交互式提示。 这需要在目标机器上启用Powershell远程处理。 为此,您可以使用Enter-PSSession进行交互式提示,或使用Invoke-Command在远程计算机上运行脚本块。