🐇

【入門#11】TerraformでRoute53(サブドメイン用Aレコード)を作ろう

に公開

今回の目標

Terraformを使って、Route53のホストゾーンにAレコード(サブドメイン)を作ります。
将来的には下記のシステム構成図になるように進めていきますが、今回はその中のAレコードに絞って解説します。

◯今回のシステム構成図の全体像

関連記事:https://zenn.dev/alt_tanuki/articles/7c1f97da33496b

前提

下記を行いRoute53にホストゾーンが作成済みであることとALBが作成済みであることです!
【入門#2】Route53の設定を行おう(手動作成分のみ)
【入門#10】TerraformでALB/ターゲットグループを作ろう

ではやっていきましょうー!

既存のホストゾーンを使用する設定を書いていきます

よくある例として、既存リソースはdata.tfに記載していきます。
data.tfを手動作成し、下記を記述していきます。

# 既存のホストゾーン
data "aws_route53_zone" "cask_tokyo" {
  name         = "cask.tokyo."
  private_zone = false
}

dataを使用するとAWSで既に作成済みのリソースをTerraformで参照できるようになります。
このあと、ホストゾーン配下にAレコードを作成して行きます。

Aレコードを書いていこう!

# Route53 ALB用Aレコード
resource "aws_route53_record" "cask_tokyo_ec2_alb_a" {
  # サブドメイン設定
  name = "ec2.cask.tokyo"

  # Aレコード
  type = "A"

  # ALBに紐づける設定
  alias {
    name                   = aws_lb.cask_tokyo_ec2.dns_name
    zone_id                = aws_lb.cask_tokyo_ec2.zone_id
    evaluate_target_health = true
  }

  # ホストゾーンID
  zone_id = data.aws_route53_zone.cask_tokyo.zone_id
}

実行してみよう!

terraform applyを行うと。

ALBに紐づくAレコードの完成です!
簡単ですね!!

下記の記事を目次として、入門#1から順にTerraformで環境構築を学べます。気になる方はぜひ見に来てください!

https://zenn.dev/alt_tanuki/articles/7c1f97da33496b

Discussion