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

如何正确访问Terraform中aws_eks_node_group资源的输出属性

问题原因

你无法正确取值的核心原因是资源结构中resources和autoscaling_groups两个字段都是列表类型,不能直接访问内部属性,必须先指定索引取出列表元素。
从你提供的aws_eks_node_group输出结构可以明确:

  • resources是仅包含1个元素的列表,第一个元素就是包含ASG信息的对象
  • 该对象内的autoscaling_groups同样是仅包含1个元素的列表,第一个元素就是你要取的ASG对象

正确引用写法

resource "aws_autoscaling_group_tag" "nodetags" {
  for_each = aws_eks_node_group.managed_workers

  autoscaling_group_name = each.value.resources[0].autoscaling_groups[0].name
  # 其余原有配置保持不变
}

如果需要兼容极端情况下列表为空的报错,可以加try函数做容错处理:

autoscaling_group_name = try(each.value.resources[0].autoscaling_groups[0].name, "")

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.02 19:54:03