我正在开发云解决方案。我没有经验,所以我想向一些专业人士询问最佳实践。当前的问题主要与自动缩放组功能有关。
我已经阅读了大量的howtos和指南,并得出结论,在ASG中配置/配置实例的唯一方法是:
所以,我们假设,我有一个自动缩放组。我想配置它启动的实例,例如,使用chef-solo(或ansible-local,但据我所知,厨师是aws的更好选择)。
我只看到两种方法:
你认为什么是更好的选择?为什么?此外,我感兴趣的是,当我的厨师烹饪书配置发生变化时,如何在ASG中更新已经运行的实例。
另外,如果你知道更好的选择,请留在这里。我愿意讨论。
答案 0 :(得分:2)
这取决于您的使用案例。
预扩展的AMI在扩展时可能会更快启动,但如果您需要对代码或配置进行微小的更改,则需要烘焙另一个AMI。如果您正在安装应用程序服务器并部署应用程序,则使用用户数据(无论是使用直接操作系统命令还是使用Chef或其他内容)可能需要更长的时间,并且您还可能引入外部依赖关系进行扩展:如果GitHub存储库脱机,该怎么办?或者必要的下载被阻止?
因此,如果放大速度很重要,请考虑预先制作的AMI。如果您能够容忍合理的扩大规模,请看混合方法:
最好的建议是尝试这两种方法来获取一些指标,看看它们如何适合您的用例。