このページでは、Cloud DNS を使用してゾーンの Google Kubernetes Engine(GKE)クラスタ スコープ ゾーンを構成する方法について説明します。
Cloud DNS を使用してゾーンの GKE クラスタ スコープ DNS ゾーンを構成するには、まず既存の限定公開 DNS ゾーンを選択するか、特定の GKE クラスタを接続する新しい限定公開 DNS ゾーンを作成します。次に、GKE クラスタの名前を参照するように DNS ゾーンを構成します。
ゾーンの 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 クラスタのロケーション。具体的には、クラスタが配置されている Google Cloud ゾーン(us-east1-b
など)。
API
managedZones.create
メソッドを使用して、POST
リクエストを送信します。
POST https://www.googleapis.com/dns/v2/projects/PROJECT_ID/locations/LOCATION/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
: マネージド ゾーンを作成したプロジェクトの IDNAME
: ゾーンの名前DESCRIPTION
: ゾーンの説明DNS_NAME
: ゾーンの DNS サフィックス(例:example.private
)GKE_CLUSTER_NAME_1
とGKE_CLUSTER_NAME_2
: GKE クラスタの完全修飾されたリソースパス(例:projects/my-project/locations/us-east1-b/clusters/my-cluster
)LOCATION
: GKE クラスタのロケーション。具体的には、クラスタが配置されている Google Cloud ゾーン(us-east1-b
など)。
ゾーンの 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 クラスタのロケーション。具体的には、クラスタが配置されている Google Cloud ゾーン(us-east1-b
など)。マネージド ゾーンはこの Google Cloud ゾーンにのみ表示されます。
API
managedZones.patch
メソッドを使用して、PATCH
リクエストを送信します。
PATCH https://www.googleapis.com/dns/v2/projects/PROJECT_ID/locations/LOCATION/managedZones/NAME { "privateVisibilityConfig": { "gkeClusters": [{ "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters", "gkeClusterName": GKE_CLUSTER_NAME_1 }, { "kind": "dns#managedZonePrivateVisibilityConfigGKEClusters", "gkeClusterName": GKE_CLUSTER_NAME_2 }, .... ] } }
以下を置き換えます。
PROJECT_ID
: マネージド ゾーンを作成したプロジェクトの IDNAME
: ゾーンの名前(例:my-zone
)GKE_CLUSTER_NAME_1
とGKE_CLUSTER_NAME_2
: GKE クラスタの完全修飾されたリソースパス(例:projects/my-project/locations/us-east1-b/clusters/my-cluster
)LOCATION
: GKE クラスタのロケーション。具体的には、クラスタが配置されている Google Cloud ゾーン(us-east1-b
など)。マネージド ゾーンはこの Google Cloud ゾーンにのみ表示されます。
ゾーンの 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 クラスタのロケーション。具体的には、クラスタが配置されている Google Cloud ゾーン(us-east1-b
など)。マネージド ゾーンはこの Google Cloud ゾーンにのみ表示されます。
API
responsePolicies.create
メソッドを使用して、POST
リクエストを送信します。
POST https://www.googleapis.com/dns/v2/projects/PROJECT_ID/locations/LOCATION/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
)LOCATION
: GKE クラスタのロケーション。具体的には、クラスタが配置されている Google Cloud ゾーン(us-east1-b
など)。マネージド ゾーンはこの Google Cloud ゾーンにのみ表示されます。
次のステップ
- Cloud DNS の使用時に発生する可能性のある一般的な問題の解決策については、トラブルシューティングをご覧ください。
- Cloud DNS のレスポンス ポリシーとルールの詳細については、レスポンス ポリシーとルールを管理するをご覧ください。
- オペレーションの監査ログを表示するには、マネージド ゾーンでオペレーションを表示するをご覧ください。