配置 DNS 区域

您可以创建一个 Service Directory 区域,以允许基于Google Cloud的服务使用 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. 网络下,选择一个或多个可以使用服务目录区域的网络。
  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

后续步骤