【问题标题】:Cloud formation - updating a stack behind an elb doesnt update the AMI云形成 - 更新 elb 后面的堆栈不会更新 AMI
【发布时间】:2013-08-03 11:29:52
【问题描述】:

我们正在使用云形成为我们的 AWS EC2 实例提供动力。我们有 3 个不同的堆栈——测试、登台和生产。我们为任何堆栈更新图像的工作流程如下:

  1. 更新“黄金大师”实例
  2. 将 Golden Master 快照到磁盘映像
  3. 在我们的 cloud-formation 配置(通过 json 文件)中更改给定堆栈和 update 堆栈的 ami 引用。

这会降低堆栈中的实例 + 使用新磁盘映像重新配置它们。

我们的测试或暂存堆栈没有问题,每个堆栈都包含一个 ec2 实例。每次更新,更换图片都没问题。

我们的生产堆栈似乎没有以相同的方式工作 :-(。它包含(至少)2 个位于负载均衡器后面的实例。当我们以相同的方式更新此堆栈时,ec2 实例不是立即刷新(即更新完成后,这些框仍然从以前的磁盘映像运行)。好消息是负载均衡器自动缩放时使用新映像。

负载均衡规则和成云会不会有冲突?

任何见解将不胜感激

【问题讨论】:

  • 您能否包含您的 Cloud Formation 脚本?另外 - 您是否定义了 UpdatePolicy?

标签: amazon-web-services amazon-ec2 autoscaling amazon-elb amazon-cloudformation


【解决方案1】:

好的 - 做了一些实验。您需要为伸缩组定义更新策略。通过定义更新策略,启动配置中的任何更改都将触发更新。没有这个 - 不会触发更新。

您不需要 ELB 来触发滚动更新,但如果您有,它也不会干扰它。

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-attribute-updatepolicy.html

【讨论】:

    【解决方案2】:

    我们可以看看你的云形成脚本吗? 关于 elb + 自动缩放,您可能是对的。

    为了更新 ami(没有 cloudformation),我手动将 autoscaling 组的 desiredCapacity 值加倍,并在新实例在 ELB 上处于在线状态时将其设置回来。

    类似的策略可能是可通过 cloudformation 编写/配置的

    【讨论】:

      猜你喜欢
      • 2023-02-15
      • 1970-01-01
      • 2021-06-27
      • 1970-01-01
      • 1970-01-01
      • 2018-05-17
      • 2013-05-13
      • 2019-07-24
      • 2019-12-07
      相关资源
      最近更新 更多