Przeglądaj źródła

Allows per-module overrides of SH instance name and ALB name

needed for special cases such as the fm-shared-search and splunk-mc
instances.

To be tagged v1.21.9
Fred Damstra 4 lat temu
rodzic
commit
9ec184cf63

+ 1 - 1
base/splunk_servers/searchhead/certificate.tf

@@ -1,6 +1,6 @@
 #Certificate 
 resource "aws_acm_certificate" "cert" {
-  domain_name       = "${var.prefix}-splunk.${var.dns_info["private"]["zone"]}"
+  domain_name       = "${local.alb_name}.${var.dns_info["private"]["zone"]}"
   validation_method = "DNS"
 
   tags = merge(var.standard_tags, var.tags)

+ 5 - 5
base/splunk_servers/searchhead/elb.tf

@@ -8,7 +8,7 @@ locals {
 }
 
 resource "aws_lb" "searchhead-alb" {
-  name               = "${var.prefix}-searchhead-alb"
+  name               = var.alb_name != "" ? "${local.alb_name}-alb" : "${var.prefix}-searchhead-alb"
   internal           = true
   load_balancer_type = "application"
   # Not supported for NLB
@@ -87,7 +87,7 @@ resource "aws_lb_listener" "searchhead-alb-listener-api" {
 #########################
 # Targets
 resource "aws_lb_target_group" "searchhead-alb-target-8000" {
-  name     = "${var.prefix}-sh-alb-target-8000"
+  name     = var.alb_name != "" ? "${local.alb_name}-alb-target-8000" : "${var.prefix}-sh-alb-target-8000"
   port     = 8000
   protocol = "HTTPS"
   target_type = "instance"
@@ -116,7 +116,7 @@ resource "aws_lb_target_group_attachment" "searchhead-alb-target-8000-instance"
 }
 
 resource "aws_lb_target_group" "searchhead-alb-target-api" {
-  name     = "${var.prefix}-sh-alb-target-api"
+  name     = var.alb_name != "" ? "${local.alb_name}-target-api" : "${var.prefix}-sh-alb-target-api"
   port     = 8089
   protocol = "HTTPS"
   target_type = "instance"
@@ -143,7 +143,7 @@ resource "aws_lb_target_group_attachment" "searchhead-alb-target-api-instance" {
 #########################
 # Security Group for ALB
 resource "aws_security_group" "searchhead-alb-sg" {
-  name = "${var.prefix}-sh-alb-sg"
+  name = var.alb_name != "" ? "${local.alb_name}-alb-sh" : "${var.prefix}-sh-alb-sg"
   description = "Security Group for the Searchhead ALB"
   vpc_id = var.vpc_id
   tags = merge(var.standard_tags, var.tags)
@@ -210,7 +210,7 @@ resource "aws_security_group_rule" "searchhead-alb-api-out" {
 # DNS Entry
 resource "aws_route53_record" "searchhead_internal" {
   zone_id = var.dns_info["private"]["zone_id"]
-  name    = "${ var.prefix }-splunk"
+  name    = local.alb_name
   type    = "CNAME"
   records = [aws_lb.searchhead-alb.dns_name]
   ttl = "60"

+ 2 - 1
base/splunk_servers/searchhead/main.tf

@@ -1,7 +1,8 @@
 # Some instance variables
 locals {
   ami_selection = "minion" # master, minion, ...
-  instance_name = "${ var.prefix }-splunk-sh"
+  instance_name = var.instance_name != "" ? var.instance_name : "${ var.prefix }-splunk-sh"
+  alb_name = var.alb_name != "" ? var.alb_name : "${ var.prefix }-splunk"
   is_moose = length(regexall("moose", var.prefix)) > 0 ? true : false
 }
 

+ 12 - 0
base/splunk_servers/searchhead/vars.tf

@@ -1,3 +1,15 @@
+variable "instance_name" {
+  description = "[Optional] Override the Instance Name"
+  type = string
+  default = ""
+}
+
+variable "alb_name" {
+  description = "[Optional] Override the ALB Name"
+  type = string
+  default = ""
+}
+
 variable "prefix" {
   description = "Prefix for Instance Names"
   type = string