no matching Route53Zone foundの暫定対応

Share on:

概要

terraformでRoute53の設定をする際、エラーで詰まった際の暫定解決方法について

詳細

エラー時の設定

data "aws_route53_zone" main {
  name         =  "example.com."
  private_zone = false
}

resource "aws_route53_record" "main" {
  type = "A"

  name    = "www.example.com."
  zone_id = data.aws_route53_zone.main.id

  alias {
    name                   = aws_lb.main.dns_name
    zone_id                = aws_lb.main.zone_id
    evaluate_target_health = true
  }
}

エラー内容

# 確認
terraform plan

Error: no matching Route53Zone found

on route53.tf line 6, in data "aws_route53_zone" "main":
6: data "aws_route53_zone" main {

修正内容

ドメイン名の設定から、ゾーンIDを指定するように変更する

赤枠ないに記載の物を指定します。

テーブル画像

terraformの内容的には以下の通りになります。

data "aws_route53_zone" main {
  zone_id      =  "xxxxxxxxxxxxxxx"
  private_zone = false
}

resource "aws_route53_record" "main" {
  type = "A"

  name    = "www.example.com."
  zone_id = data.aws_route53_zone.main.id

  alias {
    name                   = aws_lb.main.dns_name
    zone_id                = aws_lb.main.zone_id
    evaluate_target_health = true
  }
}

これでterraform applyをして設定をすることができました。