【问题标题】:Terraform: AWS Target Group unable to add multiple targetsTerraform:AWS 目标组无法添加多个目标
【发布时间】:2020-12-26 14:52:11
【问题描述】:

我正在尝试使用模块创建 ALB 和 Web 服务器。在创建 Web 服务器和 ALB 时,我无法将 Web 服务器作为目标添加到目标组。第一个连接,而第二个失败。

Error: Error registering targets with target group: ValidationError: Instance ID ' i-0cf0a85c8866214ca' is not valid

以下是我的代码 sn-ps: load_balancer\main.tf

.
.
resource "aws_alb_target_group_attachment" "tg_attach" {
  count = var.tg
  target_group_arn = aws_alb_target_group.front_end_tg.arn
  port = 80
  target_id = element(split(",", var.web_server_id), count.index)
}

网络服务器\output.tf

output "web_server_id" {
  value = join(", ", aws_instance.web.*.id)
}

root\main.tf

#Deploy Application Load Balancer
module "load_balancer" {
  source         = "./load_balancer"
  alb_depends_on = [module.web_servers]
  pubsubnets     = module.networking.public_subnets
  alb_source     = module.networking.alb_source
  alb_perf       = module.networking.alb_perf
  web_server_id  = module.web_servers.web_server_id
  perf_vpc       = module.networking.vpc_id
  tg             = var.web_count
}

root\terraform.tfvars

web_count     = 2

谁能告诉我如何使错误消失? 这个问题可能类似于Not able to add multiple target_id inside targer group using terraform。 我尝试了那里提供的解决方案,但无法解决问题。

Terraform v0.12.29

AWS 控制台

【问题讨论】:

  • 您尝试附加的实例是否位于为 ALB 启用的可用区中?
  • 实例在私有子网中,而 ALB 在公共子网中。

标签: amazon-ec2 terraform terraform-provider-aws terraform0.12+ aws-alb


【解决方案1】:

我认为问题在于实例名称中的前导空格。定义输出时,以逗号 + 空格连接:

output "web_server_id" {
  value = join(", ", aws_instance.web.*.id)
}

但是,当你拆分它时,你只使用逗号:

target_id = element(split(",", var.web_server_id), count.index)

同样在错误消息中,实例名称中有一个空格,这似乎是它失败的原因。

【讨论】:

  • 我欠你一杯啤酒。
猜你喜欢
  • 2017-11-13
  • 1970-01-01
  • 1970-01-01
  • 2018-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-09-21
  • 2010-11-21
相关资源
最近更新 更多