配置 DNS 区域

您可以创建一个 Service Directory 区域,以允许您的 Google Cloud-based 服务使用 Cloud DNS 查询您的 Service Directory 命名空间 。

这些说明要求您已拥有 Service Directory 命名空间。如果没有,请先按照 配置 Service Directory 中的步骤创建命名空间

将 Service Directory 区域附加到命名空间后,命名空间中的所有服务和端点都可通过专用网络上的 DNS 访问。所有服务和端点更新都会立即反映在其 DNS 记录中。但是,服务和端点无法通过 DNS 访问。

限制

Service Directory 与 Cloud DNS 集成具有以下限制:

  • 您只能在创建 Service Directory 区域时将其与命名空间关联。
  • Service Directory 区域必须与所关联的 Service Directory 命名空间位于同一项目中。
  • Service Directory 区域不能同时是转发区域、常规专用区域或公共区域。

创建由命名空间支持的 Service Directory 区域

您只能在创建 Service Directory 区域时将其与命名空间关联。Service Directory 区域不能同时是转发区域、常规专用区域或公共区域。

控制台

  1. 在 Google Cloud 控制台中,打开 Cloud DNS 页面。
    找到 Cloud DNS
  2. 点击创建区域
  3. 区域类型 部分中,点击专用
  4. 输入区域的名称。
  5. 输入区域的 DNS 名称。
  6. 选项下,选择使用 Service Directory 命名空间
  7. 网络下,选择一个或多个可以使用 Service Directory 区域的网络。
  8. 选择要关联的命名空间所在的区域
  9. 选择要关联的命名空间
  10. 点击创建

gcloud

gcloud dns managed-zones create SD_ZONE \
   --dns-name DNS_NAME \
   --description DESCRIPTION \
   --visibility private \
   --networks https://www.googleapis.com/compute/v1/projects/project_ID/global/networks/network \
   --service-directory-namespace https://servicedirectory.googleapis.com/v1/projects/project_ID/locations/region/namespaces/namespace-name

替换以下值:

  • SD_ZONE:您要创建的 Service Directory 区域的名称。
  • DNS_NAME:新区域的 DNS 名称,例如 us-east1.example.com.
  • DESCRIPTION:区域的说明,例如 this zone is backed by Service Directory
  • https://www.googleapis.com/compute/v1/projects/PROJECT_ID/global/networks/NETWORK: 可以使用该区域的网络的 FQDN。
  • https://www.servicedirectory.googleapis.com/v1/projects/PROJECT_ID/locations/REGION/registries/NAMESPACE_NAME: 您要关联的命名空间的 FQDN。

删除 Service Directory 区域

您可以随时删除 Service Directory 区域。此删除操作通过 Cloud DNS 进行,不会影响任何关联的 Service Directory 命名空间。关联的命名空间仍可通过 HTTP 和 gRPC 进行查找。如需了解详情,请参阅 删除代管式区域

您可以删除 指向 Service Directory 区域的服务 或命名空间,而无需 删除该区域。如果您这样做,则对该服务的任何进一步 DNS 查询都会返回 NXDOMAIN

后续步骤