Forráskód Böngészése

Test ALSI Instances

Fred Damstra 4 éve
szülő
commit
1e1b141ba5

+ 1 - 0
000-skeleton/account.hcl

@@ -41,6 +41,7 @@ locals {
   # Splunk instance sizes can be customized
   # TODO: Set these appropriately in the skeleton for prod
   instance_types = {
+    "alsi"           = "t3a.small",
     "splunk-cm"      = "t3a.small",  # legacy: t2.small
     "splunk-indexer" = "i3en.large", # legacy: t2.small, but whats the point if we don't have instance storage.
     "splunk-hf"      = "t3a.small", # legacy: t2.medium

+ 1 - 0
test/aws-us-gov/mdr-test-c2/175-splunk-alsi/.tfswitch.toml

@@ -0,0 +1 @@
+../../../../.tfswitch.toml

+ 43 - 0
test/aws-us-gov/mdr-test-c2/175-splunk-alsi/terragrunt.hcl

@@ -0,0 +1,43 @@
+locals {
+  # If you want to use any of the variables in _this_ file, you have to load them here.
+  # However, they will all be available as inputs to the module loaded in terraform.source
+  # below.
+  environment_vars = read_terragrunt_config(find_in_parent_folders("env.hcl"))
+  partition_vars = read_terragrunt_config(find_in_parent_folders("partition.hcl"))
+  region_vars = read_terragrunt_config(find_in_parent_folders("region.hcl"))
+  account_vars = read_terragrunt_config(find_in_parent_folders("account.hcl"))
+  global_vars = read_terragrunt_config(find_in_parent_folders("globals.hcl"))
+}
+
+# Terragrunt will copy the Terraform configurations specified by the source parameter, along with any files in the
+# working directory, into a temporary folder, and execute your Terraform commands in that folder.
+terraform {
+  # Double slash is intentional and required to show root of modules
+  source = "git@github.mdr.defpoint.com:mdr-engineering/xdr-terraform-modules.git//base/splunk_servers/alsi?ref=v1.10.12"
+}
+
+dependency "vpc" {
+  config_path = "../010-vpc-splunk"
+}
+
+# Include all settings from the root terragrunt.hcl file
+include {
+  path = find_in_parent_folders()
+}
+
+# These are the variables we have to pass in to use the module specified in the terragrunt source above
+inputs = {
+  # All of the inputs from the inherited hcl files are available automatically
+  # (via the `inputs` section of the root `terragrunt.hcl`). However, modules
+  # will be more flexible if you specify particular input values.
+  tags = {
+    Purpose = "Splunk Aggregated Log Source Ingestion aka cribl"
+    Terraform = "aws/${basename(get_parent_terragrunt_dir())}/${path_relative_to_include()}/"
+  }
+  prefix = local.account_vars.locals.splunk_prefix
+  instance_type = local.account_vars.locals.instance_types["alsi"]
+  vpc_id = dependency.vpc.outputs.vpc_id
+  vpc_cidr = local.account_vars.locals.vpc_info["vpc-splunk"]["cidr"]
+  azs = dependency.vpc.outputs.azs
+  subnets = dependency.vpc.outputs.public_subnets
+}

+ 4 - 0
test/aws-us-gov/mdr-test-c2/account.hcl

@@ -139,6 +139,7 @@ locals {
   }
 
   instance_types = {
+    "alsi"           = "t3a.small",
     "splunk-cm"      = "t3a.small",  # legacy: t2.small
     #"splunk-indexer" = "t3a.small", # legacy: t2.small, but whats the point if we don't have instance storage.
     #"splunk-indexer" = "i3en.large", # legacy: t2.small, but whats the point if we don't have instance storage.
@@ -177,6 +178,9 @@ locals {
   # Sensu Server
   sensu_server_instance_type = "t3a.medium"
 
+  # ALSI Servers
+  alsi_count = 2
+
   # For testing:
   # Note: instead of changing this here, you can pass parameters to terragrunt on the CLI, such as:
   #   TFVAR_create_test_instance=true TFVAR_test_instance_ami=base terragrunt apply