Terraform 设置 Route53 NS 记录永远不会完成

Terraform setting Route53 NS record never completes

resource "aws_route53_record" "fix-ns" {
  zone_id = aws_route53_zone.main.zone_id
  name    = var.domain_name
  type    = "NS"
  ttl     = "30"
  records = ["ns-1999.awsdns-57.co.uk", "ns-1031.awsdns-00.org", "ns-688.awsdns-22.net", "ns-325.awsdns-40.com"]
}

我希望我的 Route53 NS 记录与一组已知的 DNS NS 记录相匹配,因此我添加了上述资源。我的自动化 IAM 用户有 AmazonRoute53FullAccess。我们得到 aws_route53_record.fix-ns: Creating... 好的,它没有抛出任何错误,但它永远不会完成。

关于原因的建议?

编辑:我刚刚想到,我从来没有看到关于此资源的 Still creating... 消息,它只是阻止了进一步的资源创建。

有点摸不着头脑,但是...

我怀疑它实际上对您来说是失败的,但是 the default retry count max_retries = 25 启动并且您没有看到错误消息。那里的重试机制具有指数退避(出于其他原因这很好),因此 25 重试需要几分钟才能结束。

尝试将 max_retries 设置为 12 并观察结果(我猜这是一个错误)。

我需要将 allow_overwrite = true 添加到资源中。

resource "aws_route53_record" "fix-ns" {
  allow_overwrite = true
  zone_id = aws_route53_zone.main.zone_id
  name    = var.domain_name
  type    = "NS"
  ttl     = "30"
  records = ["ns-1999.awsdns-57.co.uk", "ns-1031.awsdns-00.org", "ns-688.awsdns-22.net", "ns-325.awsdns-40.com"]
}

奇怪的是,我通过有针对性的部署解决了这个问题 terraform apply -target=aws_route53_record.fix-ns。资源失败但错误未在完整应用 运行 中出现,目标 运行 允许错误出现。感觉像是错误报告 :o