account.hcl 4.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125
  1. # Set account-wide variables. These are automatically pulled in to configure the remote state bucket in the root
  2. # terragrunt.hcl configuration.
  3. locals {
  4. # TODO put the right values here
  5. account_name = "mdr-prod-frtib"
  6. account_alias = "mdr-prod-frtib"
  7. aws_account_id = "237704155425"
  8. instance_termination_protection = true # set to true for production!
  9. splunk_prefix = "frtib"
  10. splunk_private_hec = false # True if the customer needs a private HTTP Event Collector such as for ALSI
  11. splunk_data_sources = [
  12. "52.61.113.202/32", # TODO: Add customer's public IP addresses
  13. "54.205.60.17/32", # 2021-05-04 From John Conrad john.conrad.2@alight.com
  14. "52.206.203.98/32",
  15. "34.233.188.131/32",
  16. "15.200.226.57/32", # 2021-07-12 From "Nguyen, Brian A." <brian.a.nguyen@accenturefederal.com>
  17. "34.214.247.125/32", # 2022-01-20 From John Conrad john.conrad.2@alight.com
  18. "44.235.174.214/32",
  19. "52.89.203.9/32",
  20. ]
  21. splunk_legacy_cidr = [ ] # Should not be needed for new customers
  22. splunk_asg_sizes = [ 1, 1, 1 ] # How many indexers in each site
  23. account_tags = {
  24. "Client": local.splunk_prefix,
  25. }
  26. c2_account_standards_path = "../../mdr-prod-c2/005-account-standards-c2" # TODO: Subsitute with test or prod
  27. # For CIDR assignment, see https://github.mdr.defpoint.com/mdr-engineering/msoc-infrastructure/wiki/IP-Address-Allocation
  28. vpc_info = {
  29. "vpc-splunk" = {
  30. "name" = "vpc-splunk",
  31. "purpose" = "Splunk Systems (FRTIB)", # TODO: Substitute with Customer Name
  32. "cidr" = "10.42.36.0/22",
  33. "tgw_attached" = true
  34. }
  35. }
  36. # Qualys Connector - See https://github.mdr.defpoint.com/mdr-engineering/msoc-infrastructure/wiki/Qualys
  37. qualys_connector_externalid = "1619382305452" # Needs to come from the qualys console
  38. # End of TODO
  39. # Splunk instance sizes can be customized
  40. # TODO: Set these appropriately in the skeleton for prod
  41. instance_types = {
  42. "alsi-master" = "t3a.small",
  43. "alsi-worker" = "t3a.small",
  44. "splunk-cm" = "m5a.xlarge", # legacy: t2.small
  45. "splunk-indexer" = "i3en.3xlarge", # legacy: t2.small, but whats the point if we don't have instance storage.
  46. "splunk-hf" = "m5a.xlarge", # legacy: t2.medium
  47. "splunk-sh" = "m5a.4xlarge", # legacy: ? not sure
  48. "splunk-cust-sh" = "m5a.xlarge",
  49. }
  50. # Splunk Volume Sizes are probably fine at defaults
  51. splunk_volume_sizes = {
  52. "cluster_master" = {
  53. "swap": 8, # minimum: 8
  54. "/": 10, # minimum: 10
  55. "/home": 4, # minimum: 4
  56. "/var": 15, # minimum: 15
  57. "/var/tmp": 4, # minimum: 4
  58. "/var/log": 8, # minimum: 8
  59. "/var/log/audit": 8, # minimum: 8
  60. "/tmp": 4, # minimum: 4
  61. "/opt/splunk": 30, # No minimum; not in base image
  62. },
  63. "indexer" = {
  64. "swap": 8, # minimum: 8
  65. "/": 10, # minimum: 10
  66. "/home": 4, # minimum: 4
  67. "/var": 15, # minimum: 15
  68. "/var/tmp": 4, # minimum: 4
  69. "/var/log": 8, # minimum: 8
  70. "/var/log/audit": 8, # minimum: 8
  71. "/tmp": 4, # minimum: 4
  72. "/opt/splunk": 30, # No minimum; not in base image
  73. },
  74. "searchhead" = {
  75. "swap": 8, # minimum: 8
  76. "/": 10, # minimum: 10
  77. "/home": 4, # minimum: 4
  78. "/var": 15, # minimum: 15
  79. "/var/tmp": 4, # minimum: 4
  80. "/var/log": 8, # minimum: 8
  81. "/var/log/audit": 8, # minimum: 8
  82. "/tmp": 4, # minimum: 4
  83. "/opt/splunk": 60, # No minimum; not in base image
  84. },
  85. "customer_searchhead" = {
  86. "swap": 8, # minimum: 8
  87. "/": 10, # minimum: 10
  88. "/home": 4, # minimum: 4
  89. "/var": 15, # minimum: 15
  90. "/var/tmp": 4, # minimum: 4
  91. "/var/log": 8, # minimum: 8
  92. "/var/log/audit": 8, # minimum: 8
  93. "/tmp": 4, # minimum: 4
  94. "/opt/splunk": 60, # No minimum; not in base image
  95. },
  96. "heavy_forwarder" = {
  97. "swap": 8, # minimum: 8
  98. "/": 10, # minimum: 10
  99. "/home": 4, # minimum: 4
  100. "/var": 15, # minimum: 15
  101. "/var/tmp": 4, # minimum: 4
  102. "/var/log": 8, # minimum: 8
  103. "/var/log/audit": 8, # minimum: 8
  104. "/tmp": 4, # minimum: 4
  105. "/opt/splunk": 30, # No minimum; not in base image
  106. },
  107. }
  108. # ALSI - Aggregated Log Source Ingestion
  109. #
  110. # If cribl is being used for log ingestion, remember to turn on splunk_private_hec, too.
  111. alsi_workers = 0 # how many cribl workers
  112. alsi_splunk_nlb = false # splunk://moose-alsi-splunk.xdr{,test}.accenturefederalcyber.com:9997 and 9998
  113. alsi_elastic_alb = false # https://moose-alsi-elastic.xdr{,test}.accenturefederalcyber.com -> 9200
  114. alsi_hec_alb = false # https://moose-alsi-hec.xdr{,test}.accenturefederalcyber.com -> 8080
  115. }