@@ -306,6 +306,31 @@ resource "aws_lb_target_group" "application-https" {
306306 }
307307}
308308
309+ # Build NLB Target Group health check stansa
310+ locals {
311+ health_base = {
312+ interval = " 10"
313+ port = " ${ var . health_check_port } "
314+ healthy_threshold = " ${ var . health_check_healthy_threshold } "
315+ unhealthy_threshold = " ${ var . health_check_unhealthy_threshold } "
316+ protocol = " ${ var . health_check_protocol } "
317+ }
318+
319+ http = {
320+ path = " ${ var . health_check_path } "
321+ matcher = " 200-399"
322+ timeout = " 6"
323+ }
324+
325+ h_keys = " ${ join (" ," , keys (local. health_base ))} "
326+ h_vals = " ${ join (" ," , values (local. health_base ))} "
327+ http_keys = " ${ join (" ," , keys (local. http ))} "
328+ http_vals = " ${ join (" ," , values (local. http ))} "
329+ keys = " ${ var . health_check_protocol == " TCP" ? local . h_keys : " ${ local . h_keys } ,${ local . http_keys } " } "
330+ vals = " ${ var . health_check_protocol == " TCP" ? local . h_vals : " ${ local . h_vals } ,${ local . http_vals } " } "
331+ healthcheck = " ${ zipmap (split (" ," , local. keys ), split (" ," , local. vals ))} "
332+ }
333+
309334resource "aws_lb_target_group" "network" {
310335 count = " ${
311336 module . enabled . value &&
@@ -317,25 +342,15 @@ resource "aws_lb_target_group" "network" {
317342 list (element (compact (split (" ," ,local. instance_tcp_ports )), count. index ))
318343 )} "
319344
320- port = " ${ element (compact (split (" ," ,local. instance_tcp_ports )), count. index )} "
321- protocol = " TCP"
322- vpc_id = " ${ var . vpc_id } "
323- stickiness = []
345+ health_check = " ${ list (local. healthcheck )} "
346+ port = " ${ element (compact (split (" ," ,local. instance_tcp_ports )), count. index )} "
347+ protocol = " TCP"
348+ stickiness = []
349+ tags = " ${ module . label . tags } "
350+ vpc_id = " ${ var . vpc_id } "
324351
325352 # deregistration_delay = "${}"
326353 # target_type = "${}"
327- health_check {
328- interval = " 10" # only 10, 30 valid. Cannot be changed after creation
329- port = " ${ var . health_check_port } "
330- healthy_threshold = " ${ var . health_check_healthy_threshold } "
331- unhealthy_threshold = " ${ var . health_check_unhealthy_threshold } "
332- protocol = " ${ var . health_check_protocol } "
333- timeout = " 6" # "${var.health_check_timeout}"
334- path = " ${ var . health_check_path } "
335- matcher = " 200-399"
336- }
337-
338- tags = " ${ module . label . tags } "
339354
340355 lifecycle {
341356 create_before_destroy = true
0 commit comments