Kubernetes 与 Google Cloud DNS

Kubernetes 与 Google Cloud DNS

使用运行 Kubernetes 的 Google Container Engine 集群,如何才能指向http://mydomain.co.uk到 LoadBalanced ReplicationController 上?

我知道 Kubernetes 支持 SkyDNS - 我该如何将域名的 Google Cloud DNS 委托给内部 Kubernetes 集群 DNS 服务?

答案1

您需要创建一个服务映射到复制控制器中的 pod 上,然后将该服务公开到集群外部。您有两种方式可以向外部公开您的 Web 服务:

  1. 设置您的服务type: LoadBalancer提供一个网络负载均衡器
  2. 使用入口支持在 Kubernetes 中创建一个HTTP(S) 负载均衡器

任一选项的最终结果是,您将拥有一个公共 IP 地址,该地址被路由到由您的复制控制器支持的服务。

一旦您获得该 IP 地址,您将需要手动配置 DNS 记录以将您的域名指向该 IP 地址。

答案2

要为 GCP 或 AWS 上的服务自动创建 DNS 记录,您可以使用外部 DNS

有了它,您可以在服务注释中设置 DNS 名称,如下所示:

external-dns.alpha.kubernetes.io/hostname: your-service.external-dns-test.gcp.your-domain.com.

相关内容