回答问题

我们的 nginx-ingress 日志不断地充满此错误消息:

 dns.lua:61: resolve(): server returned error code: 3: name error, context: ngx.timer

我们使用默认使用 CoreDNS 的 Kubeadm 创建了 Kubernetes 集群。

/data # kubectl get pods -n kube-system
NAME                                                                    READY   STATUS             RESTARTS   AGE
calico-node-8jr7t                                                       2/2     Running            2          4d22h
calico-node-cl5f6                                                       2/2     Running            4          4d22h
calico-node-rzt28                                                       2/2     Running            2          4d22h
coredns-fb8b8dccf-n68x9                                                 1/1     Running            3          3d23h
coredns-fb8b8dccf-x9wr4                                                 1/1     Running            1          3d23h

它还有一个指向 core-dns pod 的 kube-dns 服务。

kube-system   kube-dns                                           ClusterIP      10.96.0.10       <none>                                                     53/UDP,53/TCP                 7m29s

我在日志中找不到可以帮助我解决此问题的任何其他内容。

更新:

我们在这里建议了一个带有 externalName 的服务>https://github.com/coredns/coredns/issues/2324#issuecomment-484005202

Answers

正如此评论中所建议的,我们有一个类型为“ExternalName”的服务。https://github.com/coredns/coredns/issues/2324#issuecomment-484005202

删除此服务后,我们不再收到此错误。使用 IP 地址而不是 DNS 名称应该也可以,但我从未尝试过。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐