@@ -306,6 +306,31 @@ resource "aws_lb_target_group" "application-https" {
306
306
}
307
307
}
308
308
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
+
309
334
resource "aws_lb_target_group" "network" {
310
335
count = " ${
311
336
module . enabled . value &&
@@ -317,25 +342,15 @@ resource "aws_lb_target_group" "network" {
317
342
list (element (compact (split (" ," ,local. instance_tcp_ports )), count. index ))
318
343
)} "
319
344
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 } "
324
351
325
352
# deregistration_delay = "${}"
326
353
# 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 } "
339
354
340
355
lifecycle {
341
356
create_before_destroy = true
0 commit comments