您可以创建一个 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 可用区不能同时是转发可用区、常规专用可用区或公共可用区。
控制台
- 前往 Google Cloud 控制台中的 Cloud DNS 页面。
前往 Cloud DNS - 点击创建区域。
- 在可用区类型部分中,点击专用。
- 为该区域输入一个名称。
- 为该区域输入 DNS 名称。
- 在选项下,选择使用 Service Directory 命名空间。
- 在网络下,选择一个或多个可以使用服务目录区域的网络。
- 选择您要关联的命名空间所在的区域。
- 选择要关联的命名空间。
- 点击创建。
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
。
后续步骤
- 如需了解如何在服务边界中保护 Service Directory,请参阅 Service Directory 和 VPC Service Controls。
- 如需简要了解 Service Directory,请参阅 Service Directory 概览。
- 如需了解您在使用 Service Directory 时可能会遇到的常见问题的解决方案,请参阅问题排查。