首页 > 解决方案 > Pod 无法连接到 kube dns

问题描述

我在带有 2 个节点的 BareMetal Ubuntu 20.04 中遵循了下一个指南https://computingforgeeks.com/deploy-kubernetes-cluster-on-ubuntu-with-kubeadm/

我选择 Docker 作为我的容器运行时并使用sudo kubeadm init --pod-network-cidr 10.16.0.0/16

一开始一切似乎都运行良好我遇到的问题是当一个pod需要连接到kube dns来解析域名时,虽然kubedns工作正常,所以问题似乎出在两者之间的连接上。我为 DNS https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/运行调试工具,运行时kubectl exec -i -t dnsutils -- nslookup kubernetes得到以下输出:

在此处输入图像描述

这是我的 kube dns 的日志: 在此处输入图像描述

这是我的 pod 中的 resolv.conf: 在此处输入图像描述

这是我的 kubectl 和 kubeadm 信息:

Client Version: version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.4", GitCommit:"e87da0bd6e03ec3fea7933c4b5263d151aafd07c", GitTreeState:"clean", BuildDate:"2021-02-18T16:12:00Z", GoVersion:"go1.15.8", Compiler:"gc", Platform:"linux/amd64"}

kubeadm version: &version.Info{Major:"1", Minor:"20", GitVersion:"v1.20.4", GitCommit:"e87da0bd6e03ec3fea7933c4b5263d151aafd07c", GitTreeState:"clean", BuildDate:"2021-02-18T16:09:38Z", GoVersion:"go1.15.8", Compiler:"gc", Platform:"linux/amd64"}

[编辑额外信息]

印花布豆荚状态: 在此处输入图像描述

直接查询DNS: 在此处输入图像描述

标签: kuberneteskubeadmkube-dnscorednscalico

解决方案


我使用法兰绒并且遇到了类似的问题。重新启动 coredns 部署为我解决了它:

kubectl rollout restart -n kube-system deployment/coredns

推荐阅读