本页面介绍如何使用 Cloud DNS 配置可用区级 Google Kubernetes Engine (GKE) 集群范围可用区。
如需使用 Cloud DNS 配置可用区级 GKE 集群范围 DNS 可用区,请先选择现有的专用 DNS 可用区或新建用于附加特定 GKE 集群的专用 DNS 可用区。接下来,配置 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-clusterLOCATION:GKE 集群的位置,尤其是集群所在的Google 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:您已创建托管地区的项目的 IDNAME:您的可用区的名称DESCRIPTION:您的可用区的说明DNS_NAME:您的可用区的 DNS 后缀,例如example.privateGKE_CLUSTER_NAME_1和GKE_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-zoneGKE_CLUSTER是 GKE 集群的完全限定资源路径,例如projects/my-project/locations/us-east1-b/clusters/my-clusterLOCATION:GKE 集群的位置,尤其是集群所在的 Google Cloud可用区,例如us-east1-b。托管区域仅在此Google 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:您已创建托管地区的项目的 IDNAME:您的地区的名称,例如my-zoneGKE_CLUSTER_NAME_1和GKE_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-policyDESCRIPTION:响应政策的说明,例如my-response-policy-for-gke-5GKE_CLUSTER是 GKE 集群的完全限定资源路径,例如projects/my-project/locations/us-east1-b/clusters/my-clusterLOCATION:GKE 集群的位置,尤其是集群所在的 Google Cloud可用区,例如us-east1-b。托管区域仅在此Google 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-policyDESCRIPTION:响应政策的说明,例如my-response-policy-for-gke-5GKE_CLUSTER是 GKE 集群的完全限定资源路径,例如projects/my-project/locations/us-east1-b/clusters/my-cluster
后续步骤
- 如需了解您在使用 Cloud DNS 时可能会遇到的常见问题的解决方案,请参阅问题排查。
- 如需详细了解 Cloud DNS 响应政策和规则,请参阅管理响应政策和规则。
- 如需显示操作的审核日志,请参阅查看代管可用区的操作。