11resource "aws_vpc" "main" {
2- cidr_block = var. vpc_cidr # "10.0.0.0/16"
3- enable_dns_hostnames = true
4- enable_dns_support = true
2+ cidr_block = var. vpc_cidr # "10.0.0.0/16"
3+ enable_dns_hostnames = true
4+ enable_dns_support = true
55
66 tags = {
7- Name = " ${ var . cluster_name } -vpc"
8- " kubernetes.io/cluster/${var.cluster_name}" = " shared"
7+ Name = " ${ var . cluster_name } -vpc"
8+ " kubernetes.io/cluster/${var.cluster_name}" = " shared"
99 }
1010}
1111
1212resource "aws_subnet" "private" {
13- count = length (var. private_subnet_cidrs )
14- vpc_id = aws_vpc. main . id
15- cidr_block = var. private_subnet_cidrs [count . index ] # "10.0.1.0/24"
16- availability_zone = var. availability_zones [count . index ]
13+ count = length (var. private_subnet_cidrs )
14+ vpc_id = aws_vpc. main . id
15+ cidr_block = var. private_subnet_cidrs [count . index ] # "10.0.1.0/24"
16+ availability_zone = var. availability_zones [count . index ]
1717
1818 tags = {
19- Name = " ${ var . cluster_name } -private-${ count . index + 1 } "
20- " kubernetes.io/cluster/${var.cluster_name}" = " shared"
21- " kubernetes.io/role/internal-elb" = " 1"
22- " karpenter.sh/discovery" = var.cluster_name
19+ Name = " ${ var . cluster_name } -private-${ count . index + 1 } "
20+ " kubernetes.io/cluster/${var.cluster_name}" = " shared"
21+ " kubernetes.io/role/internal-elb" = " 1"
22+ " karpenter.sh/discovery" = var.cluster_name
2323 }
2424}
2525
2626resource "aws_subnet" "public" {
27- count = length (var. public_subnet_cidrs )
28- vpc_id = aws_vpc. main . id
29- cidr_block = var. public_subnet_cidrs [count . index ] # "10.0.1.0/24"
30- availability_zone = var. availability_zones [count . index ]
31- map_public_ip_on_launch = true
27+ count = length (var. public_subnet_cidrs )
28+ vpc_id = aws_vpc. main . id
29+ cidr_block = var. public_subnet_cidrs [count . index ] # "10.0.1.0/24"
30+ availability_zone = var. availability_zones [count . index ]
31+ map_public_ip_on_launch = true
3232
3333 tags = {
34- Name = " ${ var . cluster_name } -public-${ count . index + 1 } "
35- " kubernetes.io/cluster/${var.cluster_name}" = " owned"
36- " kubernetes.io/role/elb" = " 1"
37- " karpenter.sh/discovery" = var.cluster_name
34+ Name = " ${ var . cluster_name } -public-${ count . index + 1 } "
35+ " kubernetes.io/cluster/${var.cluster_name}" = " owned"
36+ " kubernetes.io/role/elb" = " 1"
37+ " karpenter.sh/discovery" = var.cluster_name
3838 }
3939}
4040
@@ -44,7 +44,7 @@ resource "aws_internet_gateway" "main" {
4444 vpc_id = aws_vpc. main . id
4545
4646 tags = {
47- Name = " ${ var . cluster_name } -igw"
47+ Name = " ${ var . cluster_name } -igw"
4848 }
4949}
5050
@@ -63,22 +63,25 @@ resource "aws_route_table" "public" {
6363}
6464
6565resource "aws_route_table_association" "public" {
66- count = length (var. public_subnet_cidrs )
67- subnet_id = aws_subnet. public [count . index ]. id
68- route_table_id = aws_route_table. public [count . index ]. id
66+ count = length (var. public_subnet_cidrs )
67+ subnet_id = aws_subnet. public [count . index ]. id
68+ route_table_id = aws_route_table. public [count . index ]. id
6969}
7070
7171
7272resource "aws_eip" "nat" {
73- count = length (var. public_subnet_cidrs )
74- domain = " vpc"
73+ count = 1
74+ domain = " vpc"
75+ tags = {
76+ Name = " ${ var . cluster_name } -eip-nat"
77+ }
7578}
7679
7780resource "aws_nat_gateway" "main" {
78- count = length (var . public_subnet_cidrs )
79- allocation_id = aws_eip. nat [count . index ]. id
80- subnet_id = aws_subnet. public [count . index ]. id
81- depends_on = [
81+ count = 1
82+ allocation_id = aws_eip. nat [0 ]. id
83+ subnet_id = aws_subnet. public [0 ]. id
84+ depends_on = [
8285 aws_internet_gateway . main ,
8386 aws_subnet . public ,
8487 aws_eip . nat
@@ -90,12 +93,12 @@ resource "aws_nat_gateway" "main" {
9093}
9194
9295resource "aws_route_table" "private" {
93- count = length (var. private_subnet_cidrs )
94- vpc_id = aws_vpc. main . id
96+ count = length (var. private_subnet_cidrs )
97+ vpc_id = aws_vpc. main . id
9598
9699 route {
97- cidr_block = " 0.0.0.0/0"
98- nat_gateway_id = aws_nat_gateway. main [count . index ]. id
100+ cidr_block = " 0.0.0.0/0"
101+ nat_gateway_id = aws_nat_gateway. main [0 ]. id
99102 }
100103
101104 tags = {
@@ -104,8 +107,8 @@ resource "aws_route_table" "private" {
104107}
105108
106109resource "aws_route_table_association" "private" {
107- count = length (var. private_subnet_cidrs )
108- subnet_id = aws_subnet. private [count . index ]. id
109- route_table_id = aws_route_table. private [count . index ]. id
110+ count = length (var. private_subnet_cidrs )
111+ subnet_id = aws_subnet. private [count . index ]. id
112+ route_table_id = aws_route_table. private [count . index ]. id
110113}
111114
0 commit comments