1

如何将我的代码增量部署到云中的大型集群?我的意思是,如果我拥有300个节点的集群,并且希望该集群能够使用最新的构建代码进行更新,但只能更改已更改的文件(二进制文件和数据文件),那我该怎么做?将增量代码部署到云中的大型集群

我遇到谋杀,但似乎没有做增量文件部署,并将所有内容复制到每个节点。

我也看了一下厨师,但这似乎不太适合增量式总代码部署,它更适合在每台机器上运行安装程序,并确保安装的代码配置文件是最新的到厨师服务器。它看起来不喜欢所安装程序的版本。所以我看到厨师有文件控制,但可能有意义将其用于配置文件,但不知道是否对具有数百个二进制文件和数据文件的代码项目有意义。

我可以肯定的写我自己的系统来做到这一点,但我想知道如果我有更好的选择大型集群增量部署,特别是在开发阶段?

就我而言,服务器是windows而云是aws。

+0

您需要考虑的第一件事是如果您的代码能够同时运行新旧版本的代码(“滚动升级”),如果不是这样,整个讨论没有多大意义。要具备这种能力,需要相应地设计您的代码和协议。 – steve

+0

抱歉没有关注你。这有什么关系?想象一下,我希望群集上的代码始终与特定分支的最新代码保持同步,但我希望群集仅部署已更改的二进制文件和数据文件。没有任何东西从头开始,所以每当源代码发生变化时它都会快速部署。 – iCode

回答

0

看看kwatee(我是附属的)。它是一款轻量级且完全免费的工具。除此之外,它通过将每个文件的哈希与部署的哈希进行比较来自动执行增量部署。

+0

这似乎是厨师的限定版本?正确?哈希代码是如何生成和比较的?它看起来它接受一个pakage而不是一个文件夹?我对吗? – iCode

+0

@iCode与厨师的关系并不相关,厨师更擅长于处理基础设施管理,但生活在类似的空间。 Kwatee接受tar/tgz/bzip/zip档案或简单的文件夹。散列最初是在将包/文件夹上传到存储库时生成的。只要其中一个值发生更改,就会重新计算模板化文件(包含变量的I.e)的哈希值。 – mac