Terraform - 不要等待自动缩放组销毁
Posted
技术标签:
【中文标题】Terraform - 不要等待自动缩放组销毁【英文标题】:Terraform - Don't wait for autoscaling group destroy 【发布时间】:2018-02-10 01:13:24 【问题描述】:当使用Terraform lifecycle 管理我们的自动缩放组时,我们使用create_before_destroy
标志,以便在销毁当前 ASG 之前创建新的自动缩放组 (ASG)。我要解决的问题是 Terraform 似乎需要 10 分钟才能销毁当前的 ASG。
有没有办法启动销毁命令而不等待它完成?
【问题讨论】:
这里的具体用例是什么? @JakubKania 我们通过 CD 设置使用 terraform 进行部署,但希望缩短部署时间。一旦当前的 ASG 被触发销毁,我们实际上并不想等待确认它已被销毁,因为它已经超出了负载均衡器,如果需要,我们可以稍后手动清理它。 【参考方案1】:默认情况下销毁自动缩放组时,terraform 将等待池中的所有实例终止。您可以强制删除自动缩放组,即使它正在缩放资源。这不是默认行为,Terraform 通常会在删除组之前耗尽所有实例。您可以通过在 ASG 上指定 force_delete
来绕过此问题,但它可能会留下孤立资源,这是默认行为的原因。
【讨论】:
以上是关于Terraform - 不要等待自动缩放组销毁的主要内容,如果未能解决你的问题,请参考以下文章
具有自动缩放组的多个模板文件和使用 Terraform 的启动配置
Terraform 中的 ECS 服务如何连接到 AWS 自动缩放组
在 Terraform 销毁期间,terraform 在销毁 Auto-scaling 组之前尝试销毁 ECS 集群并且失败了