設定可用區 GKE 叢集範圍的區

本頁說明如何使用 Cloud DNS 設定區域 Google Kubernetes Engine (GKE) 叢集範圍區域。

如要使用 Cloud DNS 設定區域 GKE 叢集範圍的 DNS 區域,請先選擇現有的私有 DNS 區域,或建立新的私有 DNS 區域,然後附加至特定 GKE 叢集。接著,請設定 DNS 區域,以參照 GKE 叢集的名稱。

如要瞭解區域 Cloud DNS 區域,請參閱區域 Cloud DNS 區域。如要進一步瞭解範圍,請參閱「範圍和階層」。

為可用區 GKE 叢集建立可用區私人區域

如要使用 Cloud DNS 為區域 GKE 叢集建立新的代管區域私人區域,請按照下列步驟操作。

gcloud

執行 gcloud dns managed-zones create 指令:

gcloud dns managed-zones create NAME \
    --description=DESCRIPTION \
    --visibility=private \
    --gkeclusters=GKE_CLUSTER \
    --location=LOCATION

更改下列內容:

  • NAME:可用區名稱
  • DESCRIPTION:區域說明
  • GKE_CLUSTER:GKE 叢集的完整資源路徑,例如 projects/my-project/locations/us-east1-b/clusters/my-cluster
  • LOCATION:GKE 叢集的位置,具體來說,是叢集所在的Trusted Cloud區域,例如 us-east1-b

API

使用 managedZones.create 方法傳送 POST 要求:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones
{

"name": "NAME",
"description": "DESCRIPTION",
"dnsName": "DNS_NAME",
"visibility": "private"
"privateVisibilityConfig": {
    "kind": "dns#managedZonePrivateVisibilityConfig",
    "gkeClusters": [{
            "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters",
            "gkeClusterName": GKE_CLUSTER_NAME_1
        },
        {
            "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters",
            "gkeClusterName": GKE_CLUSTER_NAME_2
        },
        ....
    ]
  }
}

更改下列內容:

  • PROJECT_ID:您建立受管理區域的專案 ID
  • NAME:可用區名稱
  • DESCRIPTION:區域說明
  • DNS_NAME:您區域的 DNS 尾碼,例如 example.private
  • GKE_CLUSTER_NAME_1GKE_CLUSTER_NAME_2: GKE 叢集的完整資源路徑,例如 projects/my-project/locations/us-east1-b/clusters/my-cluster

授權區域 GKE 叢集查詢 Cloud DNS 私人區域

如要授權區域 GKE 叢集查詢現有的 Cloud DNS 私人區域,請按照這個步驟操作。

gcloud

執行 gcloud dns managed-zones update 指令:

gcloud dns managed-zones update NAME \
    --gkeclusters=GKE_CLUSTER  \
    --location=LOCATION

更改下列內容:

  • NAME:可用區名稱,例如 my-zone
  • GKE_CLUSTER:GKE 叢集的完整資源路徑,例如 projects/my-project/locations/us-east1-b/clusters/my-cluster
  • LOCATION:GKE 叢集的位置,具體來說,是叢集所在的Trusted Cloud區域,例如 us-east1-b。代管區域只會顯示在這個Trusted Cloud 區域。

API

使用 managedZones.patch 方法傳送 PATCH 要求:

PATCH https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/managedZones/NAME
{
"privateVisibilityConfig": {
    "gkeClusters": [{
            "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters",
            "gkeClusterName": GKE_CLUSTER_NAME_1
        },
        {
            "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters",
            "gkeClusterName": GKE_CLUSTER_NAME_2
        },
        ....
    ]
  }
}

更改下列內容:

  • PROJECT_ID:您建立受管理區域的專案 ID
  • NAME:可用區名稱,例如 my-zone
  • GKE_CLUSTER_NAME_1GKE_CLUSTER_NAME_2: GKE 叢集的完整資源路徑,例如 projects/my-project/locations/us-east1-b/clusters/my-cluster

設定可用區 GKE 叢集,查詢可用區回應政策

如要設定可用區 GKE 叢集,查詢可用區回應政策,請按照這個步驟操作。

gcloud

執行 gcloud dns response-policies create 指令:

gcloud dns response-policies create NAME \
    --description=DESCRIPTION \
    --gkeclusters=GKE_CLUSTER  \
    --location=LOCATION

更改下列內容:

  • NAME:回覆政策的名稱,例如「my-response-policy
  • DESCRIPTION:回覆政策的說明,例如my-response-policy-for-gke-5
  • GKE_CLUSTER:GKE 叢集的完整資源路徑,例如 projects/my-project/locations/us-east1-b/clusters/my-cluster
  • LOCATION:GKE 叢集的位置,具體來說,是叢集所在的Trusted Cloud區域,例如 us-east1-b。代管區域只會顯示在這個Trusted Cloud 區域。

API

使用 responsePolicies.create 方法傳送 POST 要求:

POST https://dns.googleapis.com/dns/v1/projects/PROJECT_ID/responsePolicies
{
  "responsePolicyName": "NAME",
  "description": "DESCRIPTION",
  "gkeClusters": [
    {
      "kind": "dns#responsePolicyGKECluster",
      "gkeClusterName": "GKE_CLUSTER"
    },
  ]
}

更改下列內容:

  • NAME:回覆政策的名稱,例如「my-response-policy
  • DESCRIPTION:回覆政策的說明,例如my-response-policy-for-gke-5
  • GKE_CLUSTER:GKE 叢集的完整資源路徑,例如 projects/my-project/locations/us-east1-b/clusters/my-cluster

後續步驟