172 похожих чатов

Всем привет! Подскажите, пожалуйста, либо я долюблюсь в глаза, либо опечатка. Хочу

добавить DNS апстримы для coreDNS в кубере. Чтобы сначала запросы были в рамках кубера, а потом использовались инфраструктурные DNS сервера.

В доке сказано, что для указания апстримов можно юзать любой режим

В шаблоне конфига говорится, что апстримы можно только для resolvconf_mode: host_resolvconf

https://github.com/kubernetes-sigs/kubespray/blob/77149e5d89695f66f1e92d8ab096e8a7b5848f6f/roles/kubernetes-apps/ansible/templates/coredns-config.yml.j2#L44

Короче, как понять, какие DNS юзает coreDNS в качестве апстримов, если их в конфигмапе нет?

46 ответов

4 просмотра

К сожалению уже не у компа. Просто вчера как раз обновлял корднс. Мы forward используем с указанием файла /etc/resolv.conf хостовой системы. С моей точки зрения, держать корднс в кубспрее - ошибка. Когда десятки нод в кубе - оно оочень долго работает ) Все что могли вынесли из кубспрея.

Hankey-Chinaski Автор вопроса
Victor Yagofarov
К сожалению уже не у компа. Просто вчера как раз о...

я недавно вынес ингресс-контроллер из кубспрея, т.к. катать этот комбайн для мизерной настройки — то ещё удовольствие, особенно, если зафейлился ран Как будет возможность, напишите) мне ещё интересно, какой resolvconf_mode вы ранее использовали? docker_dns или host_resolvconf?

а положить в /etc/resolv.conf на узлах нельзя ?

Hankey Chinaski
там и лежат

нда. там какая-то ансибловая жесть в роли preinstall. можно на тесте попробовать.. но мне кажется держать аплинки в /etc/resolv.conf на узлах прощее

Hankey-Chinaski Автор вопроса
Lucky SB
нда. там какая-то ансибловая жесть в роли preinsta...

посоветуй плиз, как бы ты законфижил resolvconf_mode с использованием upstream_dns_servers. У меня довольно простое требование. Хочу, чтобы сначала DNS отрабатывал запросы внутри кубера, а потом использовал апстримы, которые указываю в upstream_dns_servers

Hankey-Chinaski Автор вопроса
Hankey Chinaski
coreDNS

ну ты выиграл. оно так и работает, как ты хочешь. в чем твои проблемы?

Hankey-Chinaski Автор вопроса
Lucky SB
ну ты выиграл. оно так и работает, как ты хочешь. ...

проблема в том, что периодически не резолвятся внешние запросы, а они критически важны на стадиях запуска приложений. И я так и не врубился, как coreDNS знает про апстримы, если в конфигмапе их нет

Hankey Chinaski
проблема в том, что периодически не резолвятся вне...

берет их из файлика /etc/resolv.conf, который на узле лежит

Hankey-Chinaski Автор вопроса
Lucky SB
берет их из файлика /etc/resolv.conf, который на у...

хм, тогда почему иногда фейлятся резолвы? иногда проходят, иногда такое nslookup dev.example.com Server: 10.234.0.3 Address: 10.234.0.3:53 ** server can't find dev.example.com: NXDOMAIN

Hankey-Chinaski Автор вопроса
Hankey-Chinaski Автор вопроса
Lucky SB
а nodelocaldns есть у тебя ?

А нужны? В доке по кубспрею скудное описание

Hankey Chinaski
А нужны? В доке по кубспрею скудное описание

ну да. плюс в configmap dns-autoscaler можно побольше инстансов coredns запускать. у меня было когда приложуха активно спамила DNS и он не справлялся

Hankey-Chinaski Автор вопроса
Lucky SB
ну да. плюс в configmap dns-autoscaler можно побол...

подскажи ещё, пожалуйста, зачем в кубспрее определили с таким адресом? nodelocaldns_ip: 169.254.25.10 С какой целью?

Hankey Chinaski
подскажи ещё, пожалуйста, зачем в кубспрее определ...

https://kubernetes.io/docs/tasks/administer-cluster/nodelocaldns/#configuration Note: The local listen IP address for NodeLocal DNSCache can be any IP in the 169.254.20.0/16 space or any other IP address that can be guaranteed to not collide with any existing IP. This document uses 169.254.20.10 as an example.

Hankey Chinaski
А нужны? В доке по кубспрею скудное описание

Даже тут в чатике можешь поиском воспользоваться и увидишь, что coredns без nodelocaldns работает плохо. Точнее там дело не столько в самом coredns, но тем не менее. Скажем одна из распространённых проблем (может быть ее уже и пофиксили): один из подов с корднс упал или переезжает на другую ноду, но запросы ещё некоторое время идут на адрес умершего пода.

Hankey-Chinaski Автор вопроса
Pavel Litvyak
Даже тут в чатике можешь поиском воспользоваться и...

Это разве проблема coredns? У меня с любыми dns подкапотом все грустно

Hankey Chinaski
интересный кейс вы описали. Спасибо!

https://github.com/kubernetes/kubernetes/issues/56903 https://m.habr.com/ru/post/503032/ Если в чатике не накрутил

Hankey-Chinaski Автор вопроса
Aleksey Lazarev
https://github.com/kubernetes/kubernetes/issues/56...

Ещё нет. Спасибо за ссылки

Pavel Litvyak
Даже тут в чатике можешь поиском воспользоваться и...

для переездов вроде graceful shutdown придумали, правда не уверен насколько хорошо оно работает с udp

𝚔𝚟𝚊𝚙𝚜
для переездов вроде graceful shutdown придумали, п...

Ммм а какая разница - там же в любом случае с грейсфули он должен сначала убрать свои ендпоинты из сервайс а потом терминейтнутся не?

Aleksey Lazarev
Ммм а какая разница - там же в любом случае с грей...

Идея graceful shutdown в том чтобы дождаться завершения всех сессий, только потом умереть, но полагаю с udp это не работает

𝚔𝚟𝚊𝚙𝚜
для переездов вроде graceful shutdown придумали, п...

Не имеет значения же. Всё зависит от того, как процесс обрабатывает SIGTERM/

Aleksey Lazarev
Ммм а какая разница - там же в любом случае с грей...

Нет, кубер посылает SIGTERM и переводит под в статус Terminating, а как быстро успеет endpoints controller удалить endpoint - ещё вопрос.

𝚔𝚟𝚊𝚙𝚜
Идея graceful shutdown в том чтобы дождаться завер...

В этом идея, да, но никаких механизмов искаропки, которые следят за сессиями — хоть tcp, хоть udp — нет. Это на совести разработчика приложения.

Hankey Chinaski
интересный кейс вы описали. Спасибо!

Я делал хельм чарт даже для него более удобный, чем официальный: https://github.com/Nastradamus/myhelmcharts/tree/master/nodelocaldns Изучение его поможет время сэкономить :)

Timofey Larkin
В этом идея, да, но никаких механизмов искаропки, ...

Официальный kube-proxy вроде как следит, я с nfs-server-provisioner и ipvs сталкивался с проблемой что последний коннекшены не тушил на клиентах, в результате чего всё намертво висло)

𝚔𝚟𝚊𝚙𝚜
Официальный kube-proxy вроде как следит, я с nfs-s...

Это настолько внезапно, что я б даже не в документацию посмотрел, а в код)

Aleksey Lazarev
Ммм а какая разница - там же в любом случае с грей...

И дождаться, пока все правила уберутся со всех нод

Hankey-Chinaski Автор вопроса
Victor Yagofarov
Я делал хельм чарт даже для него более удобный, че...

Поставил. nslookup все также фейлятся через раз. Чтобы посоветовали потюнить, посмотреть?

Hankey Chinaski
Поставил. nslookup все также фейлятся через раз. Ч...

а в поду точно правильный reslolv.conf приехал?

Hankey-Chinaski Автор вопроса
Victor Yagofarov
а в поду точно правильный reslolv.conf приехал?

для дебага я использую команду kubectl run -n spb-dev -i --tty busybox --image=registry.example.com:9080/busybox:1.32 --restart=Never -- sh внутри пода в файле resolv.conf nameserver 10.234.0.3 search ex-dev.svc.k8s.dev.example.com svc.k8s.dev.example.com k8s.dev.example.com dev.example.com lan.example.com options ndots:5

Hankey Chinaski
для дебага я использую команду kubectl run -n spb-...

cat /etc/resolv.conf nameserver 169.254.20.10 search test.svc.cluster.local svc.cluster.local cluster.local test.test.test options ndots:5

Hankey-Chinaski Автор вопроса
Aleksey Lazarev
Дык не верный приехал)

верность не хранит?) А как вообще в nameserver 169.254.20.10 попадает в поды? он из докер опций подкидывается?

Похожие вопросы

Обсуждают сегодня

а зачем этот вопрос для удаления из чата?
Mёdkinson Medvezhkin
63
Добрый день. Хочу сделать отрисовку по команде на панели. Почему-то рисуется только при втором вызове. С чем может быть связано, не подскажете? procedure TForm1.FormDblClick(...
Kirill Filippenok
20
Всем доброго дня! Подскажите может кто использовал связку Pagebuilder + Clientsetting. Сами параметры с типом pagebuilder в модуле Clientsetting работают нормально, можно такж...
Александр Добриков
12
А почему в си некоторые вещи работают с двойными кавычками некоторые с одинарными? Нельзя было все сделать с одними или чтоб работало с разными? например чтоб выводить строки ...
.
15
Всем привет! Нужен совет от опытных. Переношу свой проект с Делфи 10.2 Токио на Лазарус 3.2 установленный через инсталлятор fpcupdeluxe-x86_64-win64. При импортировании проект...
Дмитрий Завгородний
7
Эх кто-то пришел и весь праздник испортил :( You need complex FBX scene importing setup to change things on import? good luck with that. You need navigation and pathfinding? g...
Serg Gini
5
Всем привет! Подскажите. Я написал приложение на Delphi 10.2 Tokyo под Windows 10. И передо мной стал вопрос о том чтобы сделать это приложение кроссплатформенным (под Linux и...
Дмитрий Завгородний
24
Всем привет! procedure TForm1.FormCreate(Sender: TObject); type TStartEnd = record S: Byte; E: Byte; end; var a, b: TStartEnd; begin {1} a.S := 1; {2} a.E := 2; ...
Руслан Михайлович
10
Всем привет!) я тут новенький и пытаюсь освоить evolution методом тыка. У меня при переходе между папками файлов выскакивают вот такие уведомления Можете подсказать как их от...
Диман Samoed
10
Какого хера? /Sources/App/Modules/User/Models/UserLinkApple.swift:21:20: warning: stored property '_id' of 'Sendable'-conforming class 'UserLinkApple' is mutable @ID(...
Alexander Sherbakov
14
Карта сайта