2015-02-11 69 views
0

我在我的Amazon EC2实例上有一个生产Rails应用程序,并设置了一个负载平衡器和自动扩展(我手动完成了这一切,而不是使用Elastic Beanstalk,我还使用Dokku来简化部署)。我很困惑。当需要新实例并使用自动缩放进行构建时,看起来好像我需要构建AMI,然后将新实例(通过自动缩放构建)设置为使用此AMI。Amazon EC2,Auto-Scaling,AMI,有没有更简单的方法?

但是必须有一个更简单的方法。我错过了什么吗?用Heroku,你只需添加一个测功机和BAM,就完成了。我是否真的需要复制AMI并将其设置为每次部署到生产时的自动缩放图像?是否有我应该使用的命令,工作流程或部署后脚本?

回答

0

您需要指定一个AMI,其中包含生产节点的基本设置。通常的最佳做法是使用用户数据脚本配置自动比例。所以当新的AMI在自动扩展期间启动时,它会读取用户数据(云初始化/启动)。用户数据脚本可以从git中获取代码,也可以从任何源代码控制中运行必要的预部署命令。每次部署代码时,您都无法将新的AMI配置复制到自动扩展配置中。

我希望拥有一个主AMI以及某种类似自动化的用户数据脚本,它在引导生产节点并随后连接到ELB时立即运行特定命令。

0

有一篇关于使用Opsworks的基于dokku的部署的博客文章here。其他Dokku维护者之一(Michael Hobbs)在生产中使用这种设置。

注:我是Dokku维护者之一,josegonzalez

相关问题