我们正在考虑使用 IIS、.Net 4、MSSqlServer 2003 设置重建运行冗余服务器的小型生产。
以前的三服务器配置是有机发展的,有许多手动配置的部分,它们有点相互融合,但并不完整。此外,部署故事是一堆大多数时间都能正常工作的未版本化的 PowerShell 脚本。配置文件也是如此,生产和开发之间略有不同(并且不是自动生成的方式)。日志记录、监控等也是如此。
我很好奇,是否存在关于如何以约定优于配置的方式设置这些东西以尽量减少系统管理工作量的共识。
在 Ruby 世界中,VM 映像 + Chief/Puppet + GitHub 似乎已达成共识。或者使用 EngineYard 等服务进行外部托管。但我找不到针对 MS/.Net 环境的类似建议。
我正在寻找低成本的解决方案,而不是一款对于 4-6 台虚拟机来说过于复杂的全能型企业软件。
答案1
老实说,组策略是为管理配置而制定的,可能可以用于您想要的目的。(它不仅仅是为桌面管理而发明的。)您可以使用 Chef/Puppet/CFEngine 来管理它们,但在我看来,Windows 在 Chef 中是二等公民。
Chef 和 Puppet 是以“一切都是文件”的 *nix 思维编写的,而 Windows 很少是这样的。
答案2
如果您正在运行除免费许可证之外的任何 vSphere 许可证,则可以配置 Windows VM 并将其用作模板。vSphere 将允许您从该模板进行部署并应用自定义设置(例如设置系统名称、配置 IP 设置、输入产品密钥)。
你可以在这里读更多关于它的内容: http://vinf.net/2009/07/09/如何从模板部署windows-2008服务器