我想用Powershell DSC(推送模型)管理暂存管道中的服务器。服务器映射到以下环境
- 开发:1台服务器
- 测试:2台服务器
- UAT: 2个服务器
- 生产:2台服务器
一个环境中的服务器确实具有相同的配置。但是环境之间的配置是不同的。我想使用push模式,因为我不需要设置pull服务器。
Powershell DSC提供了通过单独文件中的配置数据来管理配置的选项,但是需要注意的是,您需要指定与各自服务器名称匹配的节点名称。这意味着,我需要复制一个环境中每个服务器的配置数据。当更改配置时,我需要记住,还有第二个地方需要更新配置值。
另外,我并不真正关心服务器名称。如果明天将服务器交换为新服务器,则应该只应用与环境相关的配置。
用相同的配置在一个环境中管理多个服务器的最佳实践方法是什么?
检查链接,我想它们涵盖了场景
在多个服务器上使用单个DSC配置在这里输入链接描述
带有多个节点的DSC ConfigurationNames此处输入链接描述
生成的mof文件中不包含节点名。因此,只要构建了通用配置,就可以在部署后对其进行重命名。
您可以为每个环境创建一个具有通用名称的配置。然后列举服务器列表,并为每个服务器创建一个配置副本。
你可以更进一步。创建一个共享,在其中为每个服务器创建一个与服务器名称匹配的文件夹。然后将该服务器的目录复制到名称为localhost.mof
的文件夹中。然后,您可以在该机器上运行Start-DSCConfiguration -Path \servershare$env:computername
,作为部署脚本的一部分。