【问题标题】:How does cloudformation rollback lambda deployment?cloudformation如何回滚lambda部署?
【发布时间】:2021-12-07 17:13:01
【问题描述】:

我正在使用 cloudformation 部署一个堆栈,包括 lambda、角色、cloudwatch 规则等。如果 cf 未能部署更新,它会回滚部署。我的问题是 cf 如何管理回滚的 lambda 部署?

如果堆栈中的 iam 角色部署失败但 lambda 成功,则 cf 将回滚当前部署中的所有更改。 cf 如何知道如何回滚 lambda 部署?它是否使用 lambda 版本?如果我禁用 lambda 版本,在这种情况下会导致任何问题吗?

【问题讨论】:

  • 进展如何?仍然不清楚发生了什么?

标签: amazon-web-services aws-lambda amazon-cloudformation


【解决方案1】:

它与任何其他资源一样。 CFN“知道”更新前所有资源设置的状态。如果更新失败,回滚会将所有内容恢复到上次记录的有效状态。

这个过程并不完美,rollback may fail.然后您可以选择手动跳过有问题的资源并继续回滚。

它是否使用 lambda 版本?如果我禁用 lambda 版本,在这种情况下会导致任何问题吗?

不,它不会创建或更新任何版本。因此,有和没有版本控制的回滚之间没有区别。无论使用 lambda 函数最后一次了解堆栈状态是什么,回滚都会尝试将所有更改反转回状态。

【讨论】:

  • 这是否意味着 CF 保持部署的内部状态?如果有人在堆栈中失败,它会回滚更新而不影响实时版本?
  • @JoeyYiZhao 在依赖一个资源。有些资源需要替换,如果替换过程中堆栈更新失败,也会影响到live版本。
  • 你知道lambda是不是不能回滚的资源之一吗?
猜你喜欢
  • 2018-10-31
  • 2021-04-18
  • 2018-08-06
  • 2018-07-19
  • 2021-11-12
  • 2017-06-12
  • 2020-07-22
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多