2

我们在 AWS 中有一个负载平衡设置,有两个实例。我们使用 SVN 进行非常频繁的代码更新。我需要知道更新集群中所有实例的代码更改是多么容易。我们可以简单地做“快照”并每次为实例创建新卷吗?...或者?...

4

1 回答 1

0

我不会通过 EBS 快照进行更新。将 EBS 卷视为硬盘 - 如果您的软件有更新,您将不会更改硬盘。

由于您的代码在版本控制系统中,因此代码更新应该非常简单,例如登录到您的(多个)服务器并执行git pullor svn update。这应该从您的服务器获取最新的代码文件。根据应用程序的类型,您之后必须执行一些其他任务,运行构建脚本,清空缓存等。

问题是这种设置不能很好地扩展。如果您有n 个服务器,则必须登录并执行此命令n次。因此,研究一些可以一步使用的远程管理工具是有意义的。使用许多这些工具,您还可以获得完整的配置管理堆栈:您为每个服务器定义一组配方或任务(如已安装的包、配置文件、获取最新代码、必要的构建步骤),以及何时启动一个新服务器,它会获取其配置的最新版本并自行安装。

流行的配置管理工具包括PuppetSalt。这两个工具都包含远程执行,这应该使您的代码库发布任务更容易,您只需在主服务器上触发一个命令,它会自动在其所有仆从/从服务器上执行此任务。

于 2012-12-13T08:13:25.027 回答