您可以建立 Service Directory 區域,讓以Google Cloud為基礎的服務使用 Cloud DNS 查詢 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 - 按一下 [Create zone] (建立區域)。
- 在「區域類型」部分,按一下「私人」。
- 輸入可用區的名稱。
- 輸入區域的 DNS 名稱。
- 在「選項」下方,選取「使用 Service Directory 命名空間」。
- 在「Networks」下方,選取可使用 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
:您要建立的服務目錄區域名稱。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
。
後續步驟
- 如要瞭解如何在服務範圍中保護服務目錄,請參閱「服務目錄和 VPC Service Controls」。
- 如要瞭解 Service Directory 的總覽,請參閱 Service Directory 總覽。
- 如要找出使用 Service Directory 時可能遇到的常見問題解決方案,請參閱疑難排解。