設定 DNS 區域

您可以建立 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 可用區不能同時是轉送可用區、一般私人可用區或公開可用區。

主控台

  1. 前往 Google Cloud 控制台的 Cloud DNS 頁面。
    前往 Cloud DNS
  2. 按一下 [Create zone] (建立區域)。
  3. 在「區域類型」部分,按一下「私人」
  4. 輸入可用區的名稱。
  5. 輸入區域的 DNS 名稱。
  6. 在「選項」下方,選取「使用 Service Directory 命名空間」
  7. 在「Networks」下方,選取可使用 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:您要建立的服務目錄區域名稱。
  • 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

後續步驟