######################### # EIP resource "aws_eip" "static" { count = 2 vpc = true tags = merge(var.tags, { Name = "${var.name}-nlb-external-${var.environment}" }) } ######################### # ELB resource "aws_lb" "static" { name_prefix = substr("${var.name}-static", 0, 6) load_balancer_type = "network" internal = false subnet_mapping { subnet_id = var.public_subnets[0] allocation_id = aws_eip.static[0].id } subnet_mapping { subnet_id = var.public_subnets[1] allocation_id = aws_eip.static[1].id } access_logs { bucket = "xdr-elb-${var.environment}" enabled = true } tags = merge(var.tags, { Name = "${var.name}-nlb-external-${var.environment}" }) } resource "aws_lb_listener" "static" { load_balancer_arn = aws_lb.static.arn port = var.listener_port protocol = "TCP" default_action { type = "forward" target_group_arn = aws_lb_target_group.static.arn } tags = merge(var.tags, { Name = "${var.name}-nlb-external-${var.environment}" }) } resource "aws_lb_target_group" "static" { name_prefix = substr("${var.name}-static", 0, 6) port = var.listener_port protocol = "TCP" target_type = "alb" vpc_id = var.vpc_id tags = merge(var.tags, { Name = "${var.name}-nlb-external-${var.environment}" }) } resource "aws_lb_target_group_attachment" "static" { target_group_arn = aws_lb_target_group.static.arn target_id = aws_lb.external.id port = var.listener_port }