我们不久前开始使用wordpress博客,只有一个EC2实例和一个多可用区RDS数据库。
流量随着沉重的起伏而增加(每分钟高达1.500),因此我们决定使用EC2 Auto Scaling。 这是我们的问题:每次我们更改一些代码时,我们都必须为Auto Scaling组创建一个新的AMI并终止所有实例,以便新的实例将从新的AMI数据开始。
是否有一种简单的方法可以自动同步所有实例,当更改其中一个代码时?也许Opsworks可以做到这一点,但我没有遇到过这种情况。我已经搜索了几天的教程,但找不到任何有用的东西。
答案 0 :(得分:0)
您可以将AMI配置为在启动时下载最新代码,这样您就不必经常更新AMI。
或者您可以使用Elastic Beanstalk并让它为您管理所有这些内容。
答案 1 :(得分:0)
如果您想要一种简单的方法将更改部署到自动扩展组中的实例,我建议您使用Code Deploy。
Code Deploy与Autoscaling很好地集成。如果发生扩展事件,它将开始部署到新启动的实例,并且在部署完成之前不会将该实例投入AutoScaling组服务。
部署可以像更改代码一样简单,否则它们可能更多地归功于Code Deploy部署挂钩。
此外,您可以让Code Deploy从S3,Github或CodeCommit中获取代码。
Code Deploy很容易设置,文档也很棒: Docs AutoScaling Integreation