扩展亚马逊ec2实例

时间:2015-04-13 06:15:58

标签: amazon-web-services amazon-ec2

我将amazon ec2实例映射到1个数据量。

此实例运行我的http并拥有我的服务器代码。

现在我必须通过创建新实例和负载平衡来扩展我的应用程序。

但是如果我使用克隆现有实例创建新实例,代码和http vhost文件将如何同步。

使用快照我第一次关闭实例。

但是我想在一个实例上传我的代码时也应该与其他实例同步。

我怎样才能做到这一点?我应该将rsync从1个实例配置到另一个实例吗?

2 个答案:

答案 0 :(得分:1)

“烘焙”自定义AMI是一种非常简单的方法。从AMI启动一个新实例(从当前实例的快照开始),对其进行更改,如更新应用程序/配置/系统,测试,从中创建新的AMI,从新的AMI启动新实例,测试它们然后用新的实例替换ELB中的旧实例。

您可以使用许多工具来自动化您的应用程序部署,例如Puppet,Chef或Amazons产品之一:CodeDeploy,OpsWorks,Elastic Beanstalk,我建议您最终使用这样的工具。

答案 1 :(得分:1)

根据您的描述,您克隆了第一个Web服务器(www1)以制作第二个Web服务器(www2)。

现在,当您进行代码编辑时,您希望代码在两个Web服务器之间保持同步。

Rsync可以帮助您轻松实现这一目标。

从第二个Web服务器(www2)

rsync -chavzP --stats username@IPorNAMEofwww1:/path/to/copy/on/www1 /path/to/putfiles/on/www2

从命令行开始工作。将它添加到cronjob,以便按计划(每小时)同步。它应该只同步更改,而不是每个文件。