minikube 0.30.0 DNS не работает на CentOS 7 с Docker 18.06.1-ce и vm-driver = нет - PullRequest
0 голосов
/ 25 октября 2018

Я экспериментирую с minikube в учебных целях, на машине с CentOS 7 Linux с установленным Docker 18.06.010ce

Я установил minikube с помощью

minikube start --vm-driver=none"

Я развернул несколько приложений, но толькочтобы обнаружить, что они не могут общаться друг с другом, используя имена хостов.

Я удалил миникуб, используя

minikube delete

Я переустановил миникуб, используя

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, так и cornnsэто вызывает беспокойство?

Я искал решение где угодно, но безуспешно. Шаг 2 всегда возвращает ошибку

Я просто не могу смириться с тем, что что-то такое простое стало для меня такой большой проблемой. Пожалуйста, помогите

Ответы [ 4 ]

0 голосов
/ 25 октября 2018

Стоит также упомянуть, что разрешение DNS было потеряно после перезапуска iptables.

Я подозреваю, что это относится к правилам iptables, то есть к какому-то правилу, которое ставится в minikube и, поскольку оно теряется как часть iptables, перезапускаетпроблема вновь появляется

0 голосов
/ 25 октября 2018

Обратите внимание на вывод модуля kube-dns ниже, в нем работают только 2 из 3 контейнеров.

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

В последний раз я сталкивался с этим, когда по умолчанию в Docker FORWARD политика была DROP.Изменение его на ACCEPT с использованием приведенного ниже исправило проблему для меня.

iptables -P FORWARD ACCEPT

Это могут быть и другие вещи, пожалуйста, проверьте журналы модуля.

0 голосов
/ 25 октября 2018

После удаления / etc / kubernetes и / var / lib / kubelet и /var/lig/kubeadm.yaml и перезапуска миникуба теперь я могу успешно воспроизвести шаги отладки разрешения DNS (https://kubernetes.io/docs/tasks/administer-cluster/dns-debugging-resolution/)

Бьюсь об закладнекоторые устаревшие настройки сохранялись среди итераций старта / вершины мини-куба, приводящих к несогласованной конфигурации.

0 голосов
/ 25 октября 2018

Шахта работает с включенными зернами и отключенными 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
...