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

使用terraform-aws-modules/rds/aws执行Terraform Plan时遇"name"属性不支持错误

解决Terraform RDS模块报错:Unsupported attribute "name" for aws_db_instance

问题原因

你使用的terraform-aws-modules/rds/aws 4.x版本和当前AWS Provider版本不兼容。AWS Provider 3.x之后弃用了aws_db_instance的name属性,改用db_name,但旧版RDS模块内部输出仍在引用已被移除的name属性,从而触发报错。

解决方案

方案1:锁定AWS Provider版本适配旧RDS模块

在AWS Provider配置块中指定与RDS 4.x版本兼容的Provider版本(例如~3.74):

provider "aws" {
  version = "~> 3.74"
  region  = var.region # 替换为你的实际区域
}

执行terraform init重新初始化环境,即可解决属性不匹配问题。

方案2:升级RDS模块适配新版Provider

将RDS模块版本升级到5.x及以上(该版本已适配AWS Provider 4.x+):

module "db" {
  source  = "terraform-aws-modules/rds/aws"
  version = "~> 5.0"

  identifier = var.name
  allocated_storage = var.storage
  db_name  = replace(var.name, "-", "")
  # 其他配置保持不变,注意5.x版本部分参数可能有调整,需按需修改
}

执行terraform init -upgrade强制升级模块并完成初始化。

方案3:清理Terraform缓存(升级后仍报错时使用)

若调整版本后报错依旧,执行以下命令清理缓存后重新初始化:

rm -rf .terraform/
terraform init -upgrade

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.09 13:18:24