知り合いが、構築をIaCで行っているそうで、関連知識を深めようと思います。
前回からの続きで、main.tfにルートテーブルの関連付けを入れる場合は、以下のようになります。
resource “aws_route_table” “public” {
vpc_id = aws_vpc.this.id
tags = merge(local.tags, { Name = “${var.name}-public-rt” })
}
resource “aws_route” “public_default” {
route_table_id = aws_route_table.public.id
destination_cidr_block = “0.0.0.0/0”
gateway_id = aws_internet_gateway.this.id
}
resource “aws_route_table_association” “public” {
for_each = aws_subnet.public
subnet_id = each.value.id
route_table_id = aws_route_table.public.id
}
以下のファイルはTerraformのモジュールを実行により決定する結果を返します。
5) outputs.tf
output “vpc_id” {
value = aws_vpc.this.id
}
output “public_subnet_ids” {
value = [for s in aws_subnet.public : s.id]
}
output “private_subnet_ids” {
value = [for s in aws_subnet.private : s.id]
}