当 GKE k8s 上的 pod 部署完成后,它们能够通过 ip 或 google 元数据 DNS 服务器名称连接到其他 GCE(google 计算引擎)实例。
我使用安装在 2 个(主/从)GCE 实例上的内部绑定进行解析。假设 example.local 是内部区域名称,并且所有实例都使用它进行名称解析。我确实使用自定义 DNS,因为我需要解析本地 DNS 记录,而 google cloud 内部 DNS 无法管理。
GKE kubernetes pods 正在使用 kube-dns 并使用 /etc/resolv.conf 解析器 IP,这些 IP 使用实例默认的 google 设置,而我无法解析我的内部区域。
我真的不知道如何解决这个问题。例如,使用 Docker 可以选择在容器启动时使用“docker -d -p…… --dns=8.8.8.8…”传递 dns。
是否可以将 skydns 配置为为 example.local 定义区域转发器?只是猜测。
答案1
此功能将在 Kubernetes v1.6 中推出:
https://github.com/kubernetes/kubernetes/pull/41826
它将允许您将私有区域注入 kube-DNS 配置。