😽
Terraformのroute-tableのモジュール
route-tableのモジュールファイル
route-table.tfファイル
# ルートテーブルリソースの作成
resource "aws_route_table" "this" {
vpc_id = var.vpc_id // VPCのIDを指定
route {
cidr_block = var.destination // 宛先CIDRブロック
gateway_id = var.target // ターゲットとなるゲートウェイのID
}
// タグの設定
tags = {
Name = var.name // ルートテーブルの名前
}
}
variables.tfファイル
# VPCのIDを指定
variable "vpc_id" {
description = "The VPC ID."
}
# ルートテーブルの名前を指定
variable "name" {
description = "The name of the route table."
}
# 宛先CIDRブロックを指定
variable "destination" {
description = "The destination CIDR block."
}
# ターゲットとなるゲートウェイのIDを指定
variable "target" {
description = "The target gateway ID."
}
output.tfファイル
# 作成したルートテーブルのIDを出力
output "route_table_id" {
value = aws_route_table.this.id // 作成したルートテーブルのID
}
providers.tfファイル
# 必要なプロバイダとそのバージョンを定義
terraform {
required_providers {
aws = {
source = "hashicorp/aws" // AWSプロバイダのソース
version = "~> 5.0" // バージョン指定
}
}
}
# AWSプロバイダの設定
provider aws {
region = "ap-northeast-1" // AWSリージョン(東京リージョン)
}
README.mdファイル
route-table.tfファイル
項目 | 説明 |
---|---|
resource "aws_route_table" |
AWSのルートテーブルを定義するTerraformリソースです。 |
vpc_id |
ルートテーブルが作成されるVPCのIDを指定します。このIDはvariables.tf で定義されています。 |
route |
ルートテーブルのルート(転送ルール)を定義します。 |
cidr_block |
ルートの送信先CIDRブロックを指定します。 |
gateway_id |
目的地へのトラフィックを転送するゲートウェイ(例:インターネットゲートウェイ)のIDを指定します。 |
tags |
AWSリソースに付けるタグを定義します。この例ではName タグが設定されています。 |
variables.tfファイル
項目 | 説明 |
---|---|
variable "vpc_id" |
ルートテーブルが作成されるVPCのIDを指定します。 |
variable "name" |
ルートテーブルの名前を指定します。 |
variable "destination" |
ルートの送信先CIDRブロックを指定します。 |
variable "target" |
目的地へのトラフィックを転送するゲートウェイ(例:インターネットゲートウェイ)のIDを指定します。 |
output.tfファイル
項目 | 説明 |
---|---|
output "route_table_id" |
生成されたルートテーブルのIDを出力します。このIDは他のTerraformコードやモジュールで使用できます。 |
Discussion