GCE 和 k8s 中的 DNS 问题
DNS issues in GCE & k8s
我使用 google k8s 作为具有可抢占实例的服务。
当 google 抢占服务 kube-dns pod 的节点之一时,我遇到了问题,我在所有另一个 pods 中遇到 5-7 分钟的故障并出现 "Cannot resolve" 错误。
我尝试了 运行 第二个 kube-dns pod,但有时两个 dns 在同一个节点上 运行ning 并且我再次失败。我尝试为 kube-dns pod 定义 nodeSelector
但出现错误
Pod "kube-dns-2185667875-8b42l" is invalid: spec: Forbidden: pod updates may not change fields other than `containers[*].image` or `spec.activeDeadlineSeconds`
有没有可能运行 dns pods 在不同的节点冗余?也许有任何最佳实践?
你不能这样修改POD,你需要修改你的Deployment。此外,您可能还想研究 pod 反亲和性,以一种永远不会将它们安排在同一节点上的方式在同一部署中将您的 pods 分开。或者,您也可以从 Deployment 切换到 DaemonSet 以获得集群中每个节点恰好一个 pod 运行。
我使用 google k8s 作为具有可抢占实例的服务。
当 google 抢占服务 kube-dns pod 的节点之一时,我遇到了问题,我在所有另一个 pods 中遇到 5-7 分钟的故障并出现 "Cannot resolve" 错误。
我尝试了 运行 第二个 kube-dns pod,但有时两个 dns 在同一个节点上 运行ning 并且我再次失败。我尝试为 kube-dns pod 定义 nodeSelector
但出现错误
Pod "kube-dns-2185667875-8b42l" is invalid: spec: Forbidden: pod updates may not change fields other than `containers[*].image` or `spec.activeDeadlineSeconds`
有没有可能运行 dns pods 在不同的节点冗余?也许有任何最佳实践?
你不能这样修改POD,你需要修改你的Deployment。此外,您可能还想研究 pod 反亲和性,以一种永远不会将它们安排在同一节点上的方式在同一部署中将您的 pods 分开。或者,您也可以从 Deployment 切换到 DaemonSet 以获得集群中每个节点恰好一个 pod 运行。