Terraform:AWS 目标组无法添加多个目标
Terraform: AWS Target Group unable to add multiple targets
我正在尝试使用模块创建 ALB 和 Web 服务器。创建 Web 服务器和 ALB 时,我无法将 Web 服务器作为目标添加到目标组。第一个连接成功,第二个连接失败。
Error: Error registering targets with target group: ValidationError: Instance ID ' i-0cf0a85c8866214ca' is not valid
以下是我的代码片段:
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)
}
web-servers\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
谁能告诉我如何让错误消失?
这个问题可能类似于。
我尝试了那里提供的解决方案,但无法解决问题。
Terraform v0.12.29
AWS 控制台
我认为问题出在实例名称中的前导 space。定义输出时,您通过逗号 + space:
连接
output "web_server_id" {
value = join(", ", aws_instance.web.*.id)
}
但是拆分的时候只用逗号:
target_id = element(split(",", var.web_server_id), count.index)
同样在错误消息中,实例名称中有一个 space,这似乎是它失败的原因。
我正在尝试使用模块创建 ALB 和 Web 服务器。创建 Web 服务器和 ALB 时,我无法将 Web 服务器作为目标添加到目标组。第一个连接成功,第二个连接失败。
Error: Error registering targets with target group: ValidationError: Instance ID ' i-0cf0a85c8866214ca' is not valid
以下是我的代码片段: 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)
}
web-servers\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
谁能告诉我如何让错误消失?
这个问题可能类似于
Terraform v0.12.29
AWS 控制台
我认为问题出在实例名称中的前导 space。定义输出时,您通过逗号 + space:
连接output "web_server_id" {
value = join(", ", aws_instance.web.*.id)
}
但是拆分的时候只用逗号:
target_id = element(split(",", var.web_server_id), count.index)
同样在错误消息中,实例名称中有一个 space,这似乎是它失败的原因。