本页面介绍了如何创建启用了跨项目绑定的可用区。如需了解详细的背景信息,请参阅跨项目绑定。
限制
- 您的项目必须位于同一组织中。
- 您不能将 DNS 区域与组织外部的项目中的 VPC 网络相关联。
设置跨项目绑定
您可以创建可绑定到同一组织中的另一个项目拥有的网络的代管式专用 DNS 区域。不是在同一项目中指定网络,而是在同一组织下的另一个项目中指定网络的网址。
示例:假设您有两个项目(项目 A 和项目 B)。VPC 网络位于项目 A 中。为确保该 VPC 网络中的所有虚拟机都能够解析项目 B 中的 DNS 区域,请按照以下步骤操作。
要获取网址,请在项目 A 中使用
gcloud compute networks describe
命令:gcloud compute networks describe NETWORK_NAME
将
NETWORK_NAME
替换为项目 A 中的 VPC 网络的名称。输出将网址列为
SelfLink
,即您需要的网址。输出类似于以下内容:autoCreateSubnetworks: true creationTimestamp: '2021-08-11T14:07:16.454-07:00' description: Default network for the project id: '2485375699124847339' kind: compute#network name: default routingConfig: routingMode: REGIONAL selfLink: https://www.googleapis.com/compute/v1/projects/project-a/global/networks/default subnetworks:
通过在项目 B(您希望在其中创建或管理 DNS 区域)中运行
dns managed-zones create
命令来创建专用 DNS 区域:gcloud dns managed-zones create NAME \ --dns-name=DNS_SUFFIX \ --description="Cross Project Binding" \ --visibility=private \ --networks=VPC_NETWORK
替换以下内容:
NAME
:您的可用区的名称DNS_SUFFIX
:您的可用区的 DNS 后缀,例如example.private
VPC_NETWORK
:有权从项目 A 查询 DNS 区域的共享 VPC 网址,例如 https://www.googleapis.com/compute/v1/projects/project-a/global/networks/default。
这将在项目 B(您希望在其中创建和管理 DNS 区域)中创建一个专用 DNS 区域。您的输出类似于以下内容:
Created [https://dns.googleapis.com/dns/v1/projects/project-b/managedZones/my-zone].
后续步骤
- 如需使用代管式区域,请参阅创建、修改和删除区域。
- 如需了解您在使用 Cloud DNS 时可能会遇到的常见问题的解决方案,请参阅问题排查。
- 如需大致了解 Cloud DNS,请参阅 Cloud DNS 概览。