如何在 2 个项目之间移动 Google Cloud DNS 条目?

Fre*_*red 4 google-cloud-platform google-cloud-dns

我想做一些非常简单的事情,但看起来几乎不可能做到。

我的 Google Cloud DNS 帐户中有不同的项目。

我想将一些条目(域)从一个项目移动(迁移?)到另一个项目。我不想走删除/重新创建路径,因为所有域都是活动的,并且我不希望有任何停机时间。看起来这个过程还创建了新的 NS 条目,需要在注册商处进行更改......

这可能吗?

Sco*_*ttZ 8

是的,这是可能的。我们假设project-a是您要从中迁移的项目,project-b是您要迁移到的位置。

导出您的记录集:

gcloud dns 记录集导出 $FILENAME --zone $YOUR_ZONE --project 项目-a

在project-b中创建一个托管区域

gcloud dns 托管区域创建 $NAME --dns-name=your.com。--描述 $DESC --项目项目-b

导入记录集。在执行此操作之前,您需要删除标准记录(也许有人知道如何做得更好)。

编辑上面导出记录集时创建的 $FILENAME,并删除与以下内容完全相同的两项:

---
kind: dns#resourceRecordSet
name: clevar.cloud.
rrdatas:
- ns-cloud-c1.googledomains.com.
- ns-cloud-c2.googledomains.com.
- ns-cloud-c3.googledomains.com.
- ns-cloud-c4.googledomains.com.
ttl: 21600
type: NS
---
kind: dns#resourceRecordSet
name: clevar.cloud.
rrdatas:
- ns-cloud-c1.googledomains.com. cloud-dns-hostmaster.google.com. 14 21600 3600 259200
  300
ttl: 21600
type: SOA
Run Code Online (Sandbox Code Playgroud)

保存文件后,将其导入到project-b中的新管理区域

gcloud dns 记录集导入 $FILENAME --zone $YOUR_ZONE --project project-b

最后,当您在 Cloud Console 中查看托管区域(例如https://console.cloud.google.com/net-services/dns/zones/$YOUR_ZONE/details?project=project-b)时,您会查看您的登录名旁边右上角的文字“REGISTRAR SETUP”

单击该按钮并确保您的域名服务器记录与该框中的内容匹配。

当我经历这个时,这两个项目有不同的名称服务器,所以我不必担心这两个项目试图管理我的 DNS 的冲突。如果它们相同,您可以在项目 a上禁用 DNS API ,而不会丢失任何数据。

在确认项目 b 中拥有所有记录集并且已通过域名注册商正确设置 NS 记录后,您应该创建一个测试记录并使用它来确认一切正常/已传播。

**注意:我完成了上述操作,并在一小时内将我的区域移动了传播,但是,您可能没有那么幸运,因此在您认为它不起作用之前给它一些时间。