# Set account-wide variables. These are automatically pulled in to configure the remote state bucket in the root # terragrunt.hcl configuration. locals { # TODO put the right values here account_name = "mdr-tiaas" account_alias = "mdr-tiaas" aws_account_id = "417443073855" instance_termination_protection = true # set to true for production! splunk_prefix = "tiaas" splunk_private_hec = false # True if the customer needs a private HTTP Event Collector such as for ALSI splunk_data_sources = [ "x.x.x.x/32", # TODO: Add customer's public IP addresses ] splunk_legacy_cidr = [ ] # Should not be needed for new customers splunk_asg_sizes = [ 1, 1, 1 ] # How many indexers in each site account_tags = { "Client": local.splunk_prefix, } c2_account_standards_path = "../../mdr-prod-c2/005-account-standards-c2" # TODO: Subsitute with test or prod # For CIDR assignment, see https://github.mdr.defpoint.com/mdr-engineering/msoc-infrastructure/wiki/IP-Address-Allocation vpc_info = { "vpc-splunk" = { "name" = "vpc-splunk", "purpose" = "Splunk Systems (TODO)", # TODO: Substitute with Customer Name "cidr" = "TODO", "tgw_attached" = true } } # Qualys Connector - See https://github.mdr.defpoint.com/mdr-engineering/msoc-infrastructure/wiki/Qualys qualys_connector_externalid = "LATER" # Needs to come from the qualys console # End of TODO # Splunk instance sizes can be customized # TODO: Set these appropriately in the skeleton for prod instance_types = { "alsi-master" = "t3a.small", "alsi-worker" = "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 "splunk-sh" = "t3a.small", # legacy: ? not sure } # Splunk Volume Sizes are probably fine at defaults splunk_volume_sizes = { "cluster_master" = { "swap": 8, # minimum: 8 "/": 10, # minimum: 10 "/home": 4, # minimum: 4 "/var": 15, # minimum: 15 "/var/tmp": 4, # minimum: 4 "/var/log": 8, # minimum: 8 "/var/log/audit": 8, # minimum: 8 "/tmp": 4, # minimum: 4 "/opt/splunk": 30, # No minimum; not in base image }, "indexer" = { "swap": 8, # minimum: 8 "/": 10, # minimum: 10 "/home": 4, # minimum: 4 "/var": 15, # minimum: 15 "/var/tmp": 4, # minimum: 4 "/var/log": 8, # minimum: 8 "/var/log/audit": 8, # minimum: 8 "/tmp": 4, # minimum: 4 "/opt/splunk": 30, # No minimum; not in base image }, "searchhead" = { "swap": 8, # minimum: 8 "/": 10, # minimum: 10 "/home": 4, # minimum: 4 "/var": 15, # minimum: 15 "/var/tmp": 4, # minimum: 4 "/var/log": 8, # minimum: 8 "/var/log/audit": 8, # minimum: 8 "/tmp": 4, # minimum: 4 "/opt/splunk": 30, # No minimum; not in base image }, "heavy_forwarder" = { "swap": 8, # minimum: 8 "/": 10, # minimum: 10 "/home": 4, # minimum: 4 "/var": 15, # minimum: 15 "/var/tmp": 4, # minimum: 4 "/var/log": 8, # minimum: 8 "/var/log/audit": 8, # minimum: 8 "/tmp": 4, # minimum: 4 "/opt/splunk": 30, # No minimum; not in base image }, } # ALSI - Aggregated Log Source Ingestion # # If cribl is being used for log ingestion, remember to turn on splunk_private_hec, too. alsi_workers = 0 # how many cribl workers alsi_splunk_nlb = false # splunk://moose-alsi-splunk.xdr{,test}.accenturefederalcyber.com:9997 and 9998 alsi_elastic_alb = false # https://moose-alsi-elastic.xdr{,test}.accenturefederalcyber.com -> 9200 alsi_hec_alb = false # https://moose-alsi-hec.xdr{,test}.accenturefederalcyber.com -> 8080 }