我正在寻找一种方法来将拉部署设置为与Windows下的传统推送部署模型相同。在Windows环境中部署拉伸
最理想的情况应该是:
- 部署文件(S)到主服务器
- 子级服务器会检查是否主在给定的时间或时间间隔有一个更新。
- 如果主服务器包含一个更新,那么它会下载更新和/或执行一个脚本(类似恶性?)
的解决方案需要重量尽可能轻,必须下运行Windows环境。
我看了一下Chef和SmartFrog,但不适合这种特殊情况。
编辑:正在部署多个软件。这些是数据库脚本,Windows服务和一个网站。每个孩子都会拥有自己独特的脚本,因为它的要求和认证细节与其他方面不同。
编辑2: 到目前为止,人们纷纷拿出伟大的答案,但最终的解决方案确实需要确保安全,内部运行,所有发生在同一时间。这是由于合规性,行业法规和版本问题(例如db服务器与服务不同步)。我想到的最终解决方案就像主服务器上的FPT服务器,以及运行在子服务器上以执行安装例程(启动,停止服务,安装SQL脚本,记录安装)的Nant。这是目前可用的最接近的东西,但并不理想,因为nant在推送的基础上工作(只有在某人或程序(例如,cruisecontrol)运行脚本时才执行)。我确定必须有一个解决方案来为Windows进行适当的PULL部署。如果您可以同时在多台服务器上部署,则Linux上的Windows更新和APT是拉部署的很好例子。
什么Windows版本是子和主服务器? – jpg 2010-08-12 07:38:18
它们都是相同的版本 - Server 2008标准版本,在我们的生产站点中是Server 2008 R2标准。 – Mike737 2010-08-13 04:05:24
你想要它是安全的,但你使用FTP?我正确阅读这个吗? – Darknight 2010-08-14 13:21:46