You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Terraform无法识别ECS desired_task_count变量变更问题及解决

Terraform修改ECS desired_task_count变量无变更检测问题排查与解决

我搭建了一个ECS Fargate集群,当前运行4个相同应用的任务,期望任务数通过变量desired_task_count定义:

variable "desired_task_count" {
  description = "Desired ECS tasks to run in service"
  default = 4
}

修改该变量的默认值并保存后,执行terraform plan或terraform apply时,Terraform未检测到任何变更,tfstate文件也保持不变:

No changes. Your infrastructure matches the configuration.

Terraform has compared your real infrastructure against your configuration and found 
no differences, so no changes are needed.

Apply complete! Resources: 0 added, 0 changed, 0 destroyed.

tfstate中的对应内容:

"desired_count": 4,

但修改同一variables.tf文件中的其他变量时,Terraform能正常识别并应用变更。

我尝试过的操作:

  • 创建新变量传递该值——无效
  • 销毁后重建基础设施——有效,会生成新的状态文件

Terraform及Provider版本:

terraform --version
Terraform v1.2.4
on linux_amd64
+ provider registry.terraform.io/hashicorp/aws v3.75.2

疑问:这是否是Provider的问题?该问题仅出现在指向特定资源特定配置的变量上,还能检查哪些内容?


已解决
问题出在ECS服务资源的lifecycle块中,配置了变更忽略列表。该配置是之前为自动扩缩容功能添加的,虽然功能已临时移除,但配置未删除:

lifecycle {
    ignore_changes = [task_definition, desired_count]
  }

内容的提问来源于stack exchange,提问作者rippie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 08:39:46