minikube 0.30.0 DNS在带有Docker 18.06.1-ce和vm-driver = none

时间:2018-10-24 21:39:17

标签: docker dns kubernetes minikube

我正在为安装目的在装有Docker 18.06.010ce的CentOS 7 Linux机器上尝试使用minikube

我使用以下方法安装了minikube

minikube start --vm-driver=none"

我部署了一些应用程序,但只是发现它们无法使用其主机名互相交谈。

我使用删除了minikube

minikube delete

我使用重新安装了minikube

minikube start --vm-driver=none

然后,我按照“调试DNS解析”下的说明进行操作 (https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/) 但只是发现DNS系统无法正常工作

更确切地说,我跑步:

1。

kubectl create -f https://k8s.io/examples/admin/dns/busybox.yaml

2。

# kubectl exec -ti busybox -- nslookup kubernetes.default
Server:    10.96.0.10
Address 1: 10.96.0.10

nslookup: can't resolve 'kubernetes.default'
command terminated with exit code 1

3。

# kubectl exec busybox cat /etc/resolv.conf
nameserver 10.96.0.10
search default.svc.cluster.local svc.cluster.local cluster.local contabo.host
options ndots:5

4。

# kubectl get pods --namespace=kube-system -l k8s-app=kube-dns
NAME                        READY   STATUS    RESTARTS   AGE
coredns-c4cffd6dc-dqtbt     1/1     Running   1          4m
kube-dns-86f4d74b45-tr8vc   2/3     Running   5          4m

令人惊讶的是,kube-dns和coredns都在运行 应该担心吗?

我一直在寻找没有成功的解决方案 步骤2总是返回错误

我简直无法接受这么简单的事情对我来说是一个巨大的麻烦 请协助

5 个答案:

答案 0 :(得分:1)

我的矿山正在启用coredns和禁用kube-dns。

C02W84XMHTD5:ucp iahmad$ minikube addons list
- addon-manager: enabled
- coredns: enabled
- dashboard: enabled
- default-storageclass: enabled
- efk: disabled
- freshpod: disabled
- heapster: disabled
- ingress: disabled
- kube-dns: disabled
- metrics-server: disabled
- nvidia-driver-installer: disabled
- nvidia-gpu-device-plugin: disabled
- registry: disabled
- registry-creds: disabled
- storage-provisioner: enabled

您可以禁用kube-dns:

minikube addons disable kube-dns

答案 1 :(得分:0)

请注意下面kube-dns窗格的输出,它仅在3个容器中运行2个。

kube-dns-86f4d74b45-tr8vc 2/3 Running 5 4m

我上次遇到这个是Docker的默认FORWARD策略为DROP时。使用以下将其更改为ACCEPT可以解决我的问题。

iptables -P FORWARD ACCEPT

也可能是其他事情,请检查pod日志。

答案 2 :(得分:0)

删除/ etc / kubernetes和/ var / lib / kubelet和/var/lig/kubeadm.yaml并重新启动minikube之后,我现在可以成功重现DNS解析调试步骤(https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/

我敢肯定,在minikube的开始/顶部迭代中,一些过时的设置仍然存在,导致配置不一致。

答案 3 :(得分:0)

值得一提的是,重新启动iptables后DNS解析丢失了。

我怀疑这是与iptables规则相关的,某些规则,即被minikube放置,并且由于iptables的一部分而丢失,重新出现了问题

答案 4 :(得分:0)

在删除/ etc和/ var / lib下的所有状态文件后,我设法通过重新安装Minikube来解决了该问题,但是却忘记了更新。

现在可以将其关闭。