diff --git a/terraform/config-geo-spider/main.tf b/terraform/config-geo-spider/main.tf new file mode 100644 index 0000000000000000000000000000000000000000..e3cee66f0d0e5864f9ef04db0f610c642c48bc6c --- /dev/null +++ b/terraform/config-geo-spider/main.tf @@ -0,0 +1,209 @@ +provider "aws" { + region = "us-east-1" +} + +provider "aws" { + alias = "use1" + region = "us-east-1" +} + +provider "aws" { + alias = "use1b" + region = "us-east-1" +} + +provider "aws" { + alias = "usw2" + region = "us-west-2" +} + +provider "aws" { + alias = "euw1" + region = "eu-west-1" +} + +provider "aws" { + alias = "apne1" + region = "ap-northeast-1" +} + +provider "aws" { + alias = "sae1" + region = "sa-east-1" +} + + +module "rewan-us-east-1c" { + source = "../rewan" + providers = { + aws = aws.use1 + } + subnets = { + us-east-1a = "10.0.5.0/24" + } + counts = 1 + instance_type = "t3.small" +} + +module "rewan-us-west-2c" { + source = "../rewan" + providers = { + aws = aws.usw2 + } + subnets = { + us-west-2a = "10.0.15.0/24" + } + counts = 1 + instance_type = "t3.small" +} + +module "rewan-eu-west-1c" { + source = "../rewan" + providers = { + aws = aws.euw1 + } + subnets = { + eu-west-1a = "10.0.25.0/24" + } + counts = 1 + instance_type = "t3.small" +} + +module "rewan-ap-northeast-1c" { + source = "../rewan" + providers = { + aws = aws.apne1 + } + subnets = { + ap-northeast-1a = "10.0.35.0/24" + } + counts = 1 + instance_type = "t3.small" +} + +module "rewan-sa-east-1c" { + source = "../rewan" + providers = { + aws = aws.sae1 + } + subnets = { + sa-east-1a = "10.0.45.0/24" + } + counts = 1 + instance_type = "t3.small" +} + +module "rewan-us-east-1" { + source = "../rewan" + providers = { + aws = aws.use1 + } + subnets = { + us-east-1a = "10.0.1.0/24" + us-east-1b = "10.0.2.0/24" + us-east-1c = "10.0.3.0/24" + us-east-1d = "10.0.4.0/24" + } + counts = 4 + instance_type = "t3.small" +} + +module "rewan-us-west-2" { + source = "../rewan" + providers = { + aws = aws.usw2 + } + subnets = { + us-west-2a = "10.0.11.0/24" + us-west-2b = "10.0.12.0/24" + us-west-2c = "10.0.13.0/24" + } + counts = 4 + instance_type = "t3.small" +} + +module "rewan-eu-west-1" { + source = "../rewan" + providers = { + aws = aws.euw1 + } + subnets = { + eu-west-1a = "10.0.21.0/24" + eu-west-1b = "10.0.22.0/24" + eu-west-1c = "10.0.23.0/24" + } + counts = 4 + instance_type = "t3.small" +} + +module "rewan-ap-northeast-1" { + source = "../rewan" + providers = { + aws = aws.apne1 + } + subnets = { + ap-northeast-1a = "10.0.31.0/24" + ap-northeast-1c = "10.0.32.0/24" + ap-northeast-1d = "10.0.33.0/24" + } + counts = 4 + instance_type = "t3.small" +} + +module "rewan-us-east-1e" { + source = "../rewan" + providers = { + aws = aws.use1b + } + subnets = { + us-east-1a = "10.0.51.0/24" + us-east-1b = "10.0.52.0/24" + us-east-1c = "10.0.53.0/24" + } + counts = 3 + instance_type = "t3.small" +} + +module "rewan-sa-east-1" { + source = "../rewan" + providers = { + aws = aws.sae1 + } + subnets = { + sa-east-1a = "10.0.41.0/24" + sa-east-1b = "10.0.42.0/24" + sa-east-1c = "10.0.43.0/24" + } + counts = 3 + spot = false + instance_type = "t3.small" +} + +locals { + outregs = [ + module.rewan-us-east-1c, + module.rewan-us-west-2c, + module.rewan-eu-west-1c, + module.rewan-ap-northeast-1c, + module.rewan-us-east-1c, + module.rewan-sa-east-1c, + module.rewan-sa-east-1c, + module.rewan-sa-east-1c, + module.rewan-sa-east-1c, + module.rewan-sa-east-1c, + module.rewan-us-east-1, + module.rewan-us-west-2, + module.rewan-eu-west-1, + module.rewan-ap-northeast-1, + module.rewan-us-east-1e, + module.rewan-sa-east-1, + ] +} + +output "ip" { + value = [for s in local.outregs : s.ip] +} + +output "internal_ip" { + value = [for s in local.outregs : s.internal_ip] +} diff --git a/terraform/config-geo-spider/versions.tf b/terraform/config-geo-spider/versions.tf new file mode 100644 index 0000000000000000000000000000000000000000..ac97c6ac8e7c1ce3bd191e54af4c6c57fa93643e --- /dev/null +++ b/terraform/config-geo-spider/versions.tf @@ -0,0 +1,4 @@ + +terraform { + required_version = ">= 0.12" +}