Мой кластер microk8s работает на виртуальной машине centos8, и у меня есть некоторые проблемы с разрешением DNS для моих модулей. Сервер имен находится в х.х.х.101
и х.х.х.100
оба могут пинговаться из модулей, и я также могу пинговать 8.8.8.8
nslookup из пода выглядит так:
root@debug-7857894f66-mnklp:/# nslookup kubernetes.default
Сервер: 10.152.183.10
Адрес: 10.152.183.10#53
Имя: kubernetes.default.svc.cluster.local
Адрес: 10.152.183.1
Конфиг coredns выглядит так:
апиВерсия: v1
данные:
Corefile: ".:53 {\n ошибок\n здоровье {\n lameduck 5s\n }\n готово\n
\ журнал . {\n class error\n}\n kubernetes cluster.local in-addr.arpa
ip6.arpa {\n pods insecure\n fallthrough in-addr.arpa ip6.arpa\n}\n
\ прометей :9153\n вперед . x.x.x.101 x.x.x.100 \n кэш 30\n
\ цикл\n перезагрузка\n балансировка нагрузки\n}\n"
вид: карта конфигурации
метаданные:
аннотации:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"v1","data":{"Corefile":".:53 {\n ошибки\n здоровье {\n lameduck 5s\n}\n готов\n журнал. {\n ошибка класса\ n }\n kubernetes cluster.local in-addr.arpa ip6.arpa {\n pods insecure\n fallthrough in-addr.arpa ip6.arpa\n }\n prometheus :9153\n forward .x.x.x.101 x.x.x.100 \n кэш 30\n цикл\n перезагрузка\n балансировка нагрузки\n}\n"},"вид":"ConfigMap","метаданные":{"аннотации":{},"метки":{"addonmanager.kubernetes.io /mode":"EnsureExists","k8s-app":"kube-dns"},"name":"coredns","namespace":"kube-system"}}
Отметка времени создания: "2021-08-31T08:57:27Z"
этикетки:
addonmanager.kubernetes.io/mode: SureExists
k8s-приложение: kube-dns
имя: Корднс
пространство имен: kube-система
ResourceVersion: "2420090"
selfLink: /api/v1/namespaces/kube-system/configmaps/coredns
UID: 471b258a-253d-4b51-aaf7-7e934ab300d1
в /etc/resolv.conf
в моих стручках выглядит так:
поиск default.svc.cluster.local svc.cluster.local cluster.local xxx.xxxxx
сервер имен 10.152.183.10
варианты точек:5
когда я смотрю логи своего kube-dns с помощью $ журналы microk8s kubectl --namespace=kube-system -l k8s-app=kube-dns
Я получаю следующий ответ:
[INFO] 10.1.107.105:47549 - 5288 "AAAA IN www.google.com. udp 36 false 512" NOERROR - 0 0.000256103s
[ОШИБКА] плагин/ошибки: 2 www.google.com. AAAA: чтение udp 10.1.107.127:51486->x.x.x.101:53: чтение: нет маршрута к хосту
Служба DNS работает:
$ microk8s kubectl получить svc --namespace=kube-system
НАЗВАНИЕ ТИП КЛАСТЕР-IP ВНЕШНИЙ-IP ПОРТ(Ы) ВОЗРАСТ
[...]
kube-dns ClusterIP 10.152.183.10 <нет> 53/UDP,53/TCP,9153/TCP 21d
Доступны конечные точки DNS:
$ microk8s kubectl получить конечные точки kube-dns --namespace=kube-system
НАЗВАНИЕ КОНЕЧНЫЕ ТОЧКИ ВОЗРАСТ
куб-днс 10.1.107.127:53,10.1.107.127:53,10.1.107.127:9153 21d
Виртуальная машина, на которой работает кластер, без проблем использует тот же сервер имен. Это то, о чем мне нужно беспокоить наших администраторов, или я упускаю что-то, что неправильно настроено?
РЕДАКТИРОВАТЬ:
Хорошо, я попробовал еще немного, и есть какое-то странное поведение, которое, я думаю, связано с тем, что я неправильно создал сердцевина
файл конфигурации. Я полностью перезагрузил кластер и повторил попытку, все та же ошибка, когда я использую 8.8.8.8 или 8.8.4.4 в качестве DNS-серверов. Но когда я запускаю следующую команду: $ microk8s включить dns:x.x.x.101,x.x.x.100
наконец это работает. Затем я попытался настроить для этого с помощью $ microk8s kubectl -n kube-system редактировать configmap/coredns
и добавляю оба DNS в конфиг он перестаёт работать и опять получаю ошибку: [ОШИБКА] плагин/ошибки: 2 www.google.com. AAAA: чтение udp 10.1.107.127:51486->x.x.x.101:53: чтение: нет маршрута к хосту
так что не так с моей конфигурацией, которая автоматически правильно устанавливается с помощью $ microk8s включить dns:x.x.x.101,x.x.x.100
?
2-е редактирование
Я пытался использовать dig здесь, даже когда я указываю DNS-сервер, он не работает. Есть ли причина, по которой пинг может пройти, но DNS заблокирован системой? Это происходит только на кластер микрок8с
, хост-система работает, fin docker работает нормально ...
вот распечатки:
это изнутри стручка:
root@debug-865cb7fb4-wfhw4:/# копать www.google.com
; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> www.google.com
;; глобальные параметры: +cmd
;; время соединения истекло; нет доступа к серверам
root@debug-865cb7fb4-wfhw4:/# dig @x.x.x.101 www.google.com
; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @x.x.x.101 www.google.com
; (найден 1 сервер)
;; глобальные параметры: +cmd
;; время соединения истекло; нет доступа к серверам
root@debug-865cb7fb4-wfhw4:/# копать @8.8.8.8 www.google.com
; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @8.8.8.8 www.google.com
; (найден 1 сервер)
;; глобальные параметры: +cmd
;; время соединения истекло; нет доступа к серверам
root@debug-865cb7fb4-wfhw4:/# dig @x.x.x.100 www.google.com
; <<>> DiG 9.11.5-P4-5.1+deb10u5-Debian <<>> @x.x.x.100 www.google.com
; (найден 1 сервер)
;; глобальные параметры: +cmd
;; время соединения истекло; нет доступа к серверам
а это из хост-системы:
$ копать www.google.com
; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8_3.1 <<>> www.google.com
;; глобальные параметры: +cmd
;; Получил ответ:
;; ->>HEADER<<- код операции: QUERY, статус: NOERROR, id: 25735
;; флаги: qr rd ra; ЗАПРОС: 1, ОТВЕТ: 1, ПОЛНОМОЧИЯ: 0, ДОПОЛНИТЕЛЬНО: 1
;; ДОПОЛНИТЕЛЬНЫЙ ПСЕВДОРАЗДЕЛ:
; ЭДНС: версия: 0, флаги:; UDP: 4000
;; РАЗДЕЛ ВОПРОСОВ:
;www.google.com. В
;; РАЗДЕЛ ОТВЕТОВ:
www.google.com. 113 В А 142.250.185.228
;; Время запроса: 0 мс
;; СЕРВЕР: х.х.х.101#53(х.х.х.101)
;; КОГДА: пятница, 8 октября, 15:10:21 по центральноевропейскому летнему времени 2021 г.
;; РАЗМЕР MSG rcvd: 59
$ копать @ 8.8.8.8 www.google.com
; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8_3.1 <<>> @8.8.8.8 www.google.com
; (найден 1 сервер)
;; глобальные параметры: +cmd
;; Получил ответ:
;; ->>HEADER<<- код операции: QUERY, статус: NOERROR, id: 3924
;; флаги: qr rd ra; ЗАПРОС: 1, ОТВЕТ: 1, ПОЛНОМОЧИЯ: 0, ДОПОЛНИТЕЛЬНО: 1
;; ДОПОЛНИТЕЛЬНЫЙ ПСЕВДОРАЗДЕЛ:
; ЭДНС: версия: 0, флаги:; UDP: 512
;; РАЗДЕЛ ВОПРОСОВ:
;www.google.com. В
;; РАЗДЕЛ ОТВЕТОВ:
www.google.com. 300 В А 142.250.185.228
;; Время запроса: 34 мс
;; СЕРВЕР: 8.8.8.8#53(8.8.8.8)
;; КОГДА: пятница, 8 октября, 15:10:49 по центральноевропейскому летнему времени 2021 г.
;; РАЗМЕР MSG rcvd: 59
$ dig @x.x.x.101 www.google.com
; <<>> DiG 9.11.20-RedHat-9.11.20-5.el8_3.1 <<>> @x.x.x.101 www.google.com
; (найден 1 сервер)
;; глобальные параметры: +cmd
;; Получил ответ:
;; ->>HEADER<<- код операции: QUERY, статус: NOERROR, id: 60305
;; флаги: qr rd ra; ЗАПРОС: 1, ОТВЕТ: 1, ПОЛНОМОЧИЯ: 0, ДОПОЛНИТЕЛЬНО: 1
;; ДОПОЛНИТЕЛЬНЫЙ ПСЕВДОРАЗДЕЛ:
; ЭДНС: версия: 0, флаги:; UDP: 4000
;; РАЗДЕЛ ВОПРОСОВ:
;www.google.com. В
;; РАЗДЕЛ ОТВЕТОВ:
www.google.com. 70 В А 142.250.185.228
;; Время запроса: 0 мс
;; СЕРВЕР: х.х.х.101#53(х.х.х.101)
;; КОГДА: пятница, 8 октября, 15:11:04 CEST 2021
;; РАЗМЕР MSG rcvd: 59
Я понятия не имею, что, кажется, происходит....