# Copyright (c) HashiCorp, Inc. # SPDX-License-Identifier: MPL-2.0 # # VPC Resources # * VPC # * Subnets # * Internet Gateway # * Route Table # resource "aws_vpc" "demo" { cidr_block = "10.0.0.0/16" tags = tomap({ "Name" = "terraform-eks-demo-node", "kubernetes.io/cluster/${var.cluster_name}" = "shared", }) } resource "aws_subnet" "demo" { count = 2 availability_zone = data.aws_availability_zones.available.names[count.index] cidr_block = "10.0.${count.index}.0/24" map_public_ip_on_launch = true vpc_id = aws_vpc.demo.id tags = tomap({ "Name" = "terraform-eks-demo-node", "kubernetes.io/cluster/${var.cluster_name}" = "shared", }) } resource "aws_internet_gateway" "demo" { vpc_id = aws_vpc.demo.id tags = { Name = "terraform-eks-demo" } } resource "aws_route_table" "demo" { vpc_id = aws_vpc.demo.id route { cidr_block = "0.0.0.0/0" gateway_id = aws_internet_gateway.demo.id } } resource "aws_route_table_association" "demo" { count = 2 subnet_id = aws_subnet.demo[count.index].id route_table_id = aws_route_table.demo.id }