在ubuntu上运行的Kubernetes吊舱中DNS解析失败

在ubuntu上运行的Kubernetes吊舱中DNS解析失败,ubuntu,kubernetes,kubeadm,coredns,Ubuntu,Kubernetes,Kubeadm,Coredns,我最近创建了一个kubernetes集群,其中一个主集群和一个从集群(两台笔记本电脑),运行Ubuntu18.04,使用Kubeadm和flannel作为网络。我能够将2个微服务部署为2个吊舱,并为其中任何一个创建了2个服务。我能够使用节点IP和服务端口调用这两个服务的API。但是POD无法使用服务域名相互通信。 然后我跟着那条路走 在终端中运行kubectl exec-ti dnsutils--nslookup kubernetes.default 我一直在 ;;连接超时;无法访问任何服务器

我最近创建了一个kubernetes集群,其中一个主集群和一个从集群(两台笔记本电脑),运行Ubuntu18.04,使用Kubeadm和flannel作为网络。我能够将2个微服务部署为2个吊舱,并为其中任何一个创建了2个服务。我能够使用节点IP和服务端口调用这两个服务的API。但是POD无法使用服务域名相互通信。 然后我跟着那条路走

在终端中运行
kubectl exec-ti dnsutils--nslookup kubernetes.default
我一直在

;;连接超时;无法访问任何服务器。命令终止,退出代码为1


上述页面中的所有其余步骤都按预期工作。最后,提到了ubuntu中resolv.conf的问题以及如何缓解这个问题。但我在那里迷路了,不知道如何实现。有人来过这个问题吗?你能帮我修复它吗?

如果你从不同的名称空间访问服务,那么你需要在服务的名称空间中添加
my svc.my namespace.svc.cluster.local
,如果你从同一名称空间访问它,那么你可以使用
my svc.svc.cluster.local
,而不需要提及名称空间。

核心dns豆荚在跑吗?你给库比德的苹果酒是什么?是的,他们在跑。kubectl get pods--namespace=kube system-l k8s app=kube dns NAME READY STATUS重新启动coredns-6955765f44-crz59 1/1运行0 20m coredns-6955765f44-gf4wq 1/1运行0 20mas对于pod cidr我给出的10.244.0.0/16所有pods都在kube系统命名空间中运行?您是否禁用了防火墙?@ArghyaSadhu是的,我没有指定任何显式名称空间,而且在运行
kubectl exec dnsutils cat/etc/resolv.conf
时也没有指定。这就是结果。。。。nameserver 10.96.0.10搜索默认值.svc.cluster.local svc.cluster.local cluster.local options NDOT:5。。。。。。。。。。。。。。。。我的防火墙已启用