本页面介绍如何使用 Cloud DNS 配置 Google Kubernetes Engine 集群范围。
如需使用 Cloud DNS 配置 GKE 集群范围 DNS 地区,请先选择现有的专用 DNS 地区或新建用于附加特定 GKE 集群的专用 DNS 地区。接下来,配置 DNS 可用区以引用 GKE 集群的名称。
如需详细了解范围,请参阅范围和层次结构。
为 GKE 集群创建专用可用区
如需使用 Cloud DNS 为 GKE 集群创建新的托管专用地区,请完成以下步骤。
gcloud
运行 gcloud dns managed-zones create 命令:
gcloud dns managed-zones create NAME \
--dns-name=DNS_NAME \
--visibility=private \
--gkeclusters=GKE_CLUSTER
请替换以下内容:
NAME:您的可用区的名称DNS_NAME:您的可用区的 DNS 后缀,例如example.private.GKE_CLUSTER是 GKE 集群的完全限定资源路径,例如projects/my-project/locations/us-east1a/clusters/my-cluster
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.private.GKE_CLUSTER_NAME_1和GKE_CLUSTER_NAME_2:GKE 集群的完全限定资源路径,例如projects/my-project/locations/us-east1a/clusters/my-cluster
授权 GKE 集群查询 Cloud DNS 专用可用区
如需授权 GKE 集群查询现有 Cloud DNS 专用地区,请完成以下步骤。
gcloud
运行 gcloud dns managed-zones update 命令:
gcloud dns managed-zones update NAME \
--gkeclusters=GKE_CLUSTER
请替换以下内容:
NAME:您的地区的名称,例如my-zoneGKE_CLUSTER是 GKE 集群的完全限定资源路径,例如projects/my-project/locations/us-east1a/clusters/my-cluster
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-east1a/clusters/my-cluster
配置 GKE 集群以查询响应政策
如需配置 GKE 集群以查询响应政策,请完成以下步骤。
gcloud
运行 gcloud dns response-policies create 命令:
gcloud dns response-policies create NAME \
--description=DESCRIPTION \
--gkeclusters=GKE_CLUSTER
请替换以下内容:
NAME:响应政策的名称,例如my-response-policyDESCRIPTION:响应政策的说明,例如"my-response-policy-for-gke-5"GKE_CLUSTER是 GKE 集群的完全限定资源路径,例如projects/my-project/locations/us-east1a/clusters/my-cluster
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-east1a/clusters/my-cluster
后续步骤
- 如需了解您在使用 Cloud DNS 时可能会遇到的常见问题的解决方案,请参阅问题排查。
- 如需详细了解 Cloud DNS 响应政策和规则,请参阅管理响应政策和规则。
- 如需显示操作的审核日志,请参阅查看代管可用区的操作。