【问题标题】:Removing custom domain from EC2 instance, and then use domain for Cloud Run app (domain in Route 53)从 EC2 实例中删除自定义域,然后将域用于 Cloud Run 应用程序(Route 53 中的域)
【发布时间】:2020-09-25 05:06:26
【问题描述】:

根据this earlier post,我能够验证我们的域(位于 Route 53 中)以用作 GCPs Cloud Run 的自定义域。但是,我们现在正在努力更新此域的 DNS 记录。

我们的域 mydomain.com 以前用于 AWS EC2 实例。我们在 Route 53 中为该域托管的区域目前有 8 条记录,具有各种记录类型(A、MX、NS、SOA、TXT、CNAME)。在上传云运行的 8 条 DNS 记录之前(GCP 给了我们 4 条带 ip 地址的 A DNS 记录和 4 条带 ip 地址的 AAAA DNS 记录来上传),我应该先删除托管中的所有以前的记录吗?这个域的区域?我认为这些早期记录与我们之前使用 ec2 实例的域有关。

从托管区域中删除所有以前的记录是否安全?或者最好创建一个新的托管区域以与 GCP 云运行一起使用,并将这个初始托管区域保留在 EC2 实例中?我不确定是否可以为 1 个域设置 2 个托管区域。如果只有 1 个区域是可能的,我不确定是否应该删除 + 重新创建一个新的托管区域以与 Cloud Run 一起使用,或者尝试编辑我的初始托管区域(通过删除旧的 DNS 记录)。我只需要将这个自定义域从 EC2 实例移动到云运行应用程序。

谢谢!

悬赏前编辑:以下是 Cloud Run 告诉我添加到我的域名主机的 DNS 记录(真实值和域名已更改):

...这是我的域托管区域:

...前 2 条记录是 Cloud Run 给我的新 A 和 AAAA 记录(我之前删除了 2 条 A 记录)。在尝试创建 A 记录时,我在尝试创建 4 个单独的 A 记录时实际上收到了一个错误,因此我将所有 4 个 IP 地址放入一个 A 记录中(不确定这是否正确)。

不幸的是,在 GCP /run/domains 页面中,我仍然收到此错误/警告消息:

我不打算再次在此域中使用旧的 AWS EC2 实例,所以也许我应该删除与其关联的所有旧 DNS 记录?但是,我不确定哪些记录可以安全删除,哪些不是...也许最好创建一个新的托管区域(如下面的答案中所建议的)?目前,我正在尝试简单地编辑我的旧托管区域(如以下评论中所建议的那样)。

我们在周末的大部分时间里都在为此苦苦挣扎,并且确实可以使用一些建议来将此域从 EC2 实例中取出并放到云运行部署中。

Edit2:几分钟前我刚刚使用云运行 DNS 记录更新了托管区域,所以也许我只需要给它时间?再说一次,我完全不确定......

【问题讨论】:

  • 只需编辑此区域(创建新记录并删除旧记录 - 仅与新记录冲突的记录)。删除之前记下旧记录,不要碰除 A/AAAA 以外的任何记录

标签: amazon-web-services amazon-ec2 dns amazon-route53 google-cloud-dns


【解决方案1】:

我将指出两种最明显的方式及其优缺点。

1.最安全的方式

您可以创建一个新的managed zone(GCP 相当于 AWS 托管区域),在 GCP 中为您的云运行应用程序创建all the needed records。然后更改您从 GCP 获得的域名注册商 DNS 服务器(可能类似于 ns-cloud-a1.googledomains.com)。

这样您将拥有完整的工作副本(设置以适应 GCP 的云运行),如果您想快速返回 AWS,您只需指向域注册商处的 AWS DNS 服务器。

此解决方案的缺点是 you will have to pay a little bit more,因为您将有效地将您的域托管在两个提供商处(但只会积极使用 GCP)。

2。简单的方法。

在 GCP 创建新的托管区域,将您的域指向 GCP 的 DNS 服务器并删除 AWS 上的托管区域。

您还可以在 AWS 中备份您的托管区域 - 您可以have a look at this blog post 怎么做。

在我看来,如果您打算返回(或备份)您为 AWS 设置的域记录,那么第一种方法就是首选。额外的费用也可以忽略不计。

更新

对 DNS 设置所做的任何更改(添加和删除记录、修改)通常最多需要 24 小时才能在 Internet 上传播。

甚至more about DNS records 以及如何管理它们。

如果您想向您的托管区域添加多个 A 记录,请编辑您的区域,单击“添加记录集”按钮,然后选择 A 记录类型(或 AAA 用于 IPv6,然后首先输入 address值,然后单击下面的“添加项目”按钮并输入另一个等。

如果您更喜欢使用gcloud,这里有一些documentation how to add records to your zone(域)。

【讨论】:

  • 将 GCP 托管区域与 Cloud DNS 结合使用是可行的方法(而不是在 AWS 中编辑区域)。谢谢!
  • 谢谢我能帮上忙 :)
  • 为什么要将 4 个 IP 绑定到一个域?从技术上讲,可以添加冗余,但不推荐。或者,也许您确实有子域并希望将它们重定向到不同的 IP?
  • 4个A记录的IP除了最后2个数字123.456.789.xx外都相同,与AAAA记录相同
  • 我已经更新了我的答案,包括您的问题如何添加多个 A/AAA 记录 :)
猜你喜欢
  • 2016-02-25
  • 1970-01-01
  • 1970-01-01
  • 2017-02-14
  • 2020-06-18
  • 2013-07-08
  • 2017-06-27
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多