EC2. Load balancer. At least two subnets must be specified
You'll first need to create two or more subnets in your VPC. It's typically good practice to create at least one subnet for each availability zone (AZ) in your region. Be sure to select public/private as is appropriate for your architecture.
There isn't a specific example in the AWS documentation, but be sure to first understand VPC concepts and the creation of subnets. See Scenarios and Examples for the closest example walkthroughs for creating subnets.
Selecting subnets when configuring an ELB should be straightforward now.
You need two subnets in your VPC: good practice is to have one in two different availability zones, for instance a and b. The relevant section of TERRAFORM_CONFIG_NAME.tf would look something like this:
setting {
namespace = "aws:ec2:vpc"
name = "Subnets"
value = "${lookup(var.vpc_subnets, format("%s_%s", var.location, var.availability_zone))}, ${lookup(var.vpc_subnets, format("%s_%s", var.location, var.secondary_availability_zone))}"
}
, variables.tf like this:
variable "vpc_subnets" {
type = "map"
default = {
"frankfurt_a" = "subnet-12345671"
"frankfurt_b" = "subnet-12345672"
"frankfurt_c" = "subnet-12345673"
"ireland_a" = "subnet-12345674"
"ireland_b" = "subnet-12345675"
"ireland_c" = "subnet-12345676"
}
}
variable "availability_zone" {
default = "a"
}
variable "secondary_availability_zone" {
default = "b"
}
variable "regions" {
type = "map"
default = {
"frankfurt" = "eu-central-1"
"ireland" = "eu-west-1"
"london" = "eu-west-2"
}
}
variable "location" {
default = "ireland"
}