terraform 自动缩放组销毁超时
Posted
技术标签:
【中文标题】terraform 自动缩放组销毁超时【英文标题】:terraform autoscaling group destroy timeouts 【发布时间】:2017-10-20 21:50:14 【问题描述】:有什么方法可以更改 terraform 默认超时?
例如在terraform apply
上,我经常超时尝试销毁自动缩放组:
module.foo.aws_autoscaling_group.bar (deposed #0): Still destroying... (10m0s elapsed)
Error applying plan:
1 error(s) occurred:
* aws_autoscaling_group.bar (deposed #0): group still has 1 instances
如果我重新运行 terraform apply,它会起作用。超时似乎是 10 分钟——我想将时间加倍,以便它可靠地完成。或者,有没有办法让 Auto Scaling 组更快地删除?
【问题讨论】:
这对你有用吗?我收到[ERR] Error decoding timeout: Timeout Key (create) is not supported
用于自动扩展组...您介意分享一下您是如何将其添加到您的 ASG 资源声明中的吗?
【参考方案1】:
您可以在 terraform 中为特定资源添加超时
timeouts
create = "60m"
delete = "2h"
https://www.terraform.io/docs/configuration/resources.html
【讨论】:
感谢您的建议,但是(至少对于 Auto Scaling 组尤其如此),我得到:[ERR] Error decoding timeout: Timeout Key (create) is not supported
... 任何提示?
asg 中有多少个实例?你能用 asg 资源发布你的 terraform 吗?
对于自动缩放组,答案说支持删除键,但不支持创建键。对于创建超时,您有更复杂的选项——请参阅terraform.io/docs/providers/aws/r/…【参考方案2】:
当我尝试使用terraform destroy
删除自动缩放组时,我遇到了同样的问题
我通过在资源创建部分添加以下行来解决问题:
timeouts
delete = "60m"
【讨论】:
以上是关于terraform 自动缩放组销毁超时的主要内容,如果未能解决你的问题,请参考以下文章
具有自动缩放组的多个模板文件和使用 Terraform 的启动配置
Terraform 中的 ECS 服务如何连接到 AWS 自动缩放组
在 Terraform 销毁期间,terraform 在销毁 Auto-scaling 组之前尝试销毁 ECS 集群并且失败了