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

Что-То я запутался.... Похоже, что-то у меня не так с

разрешением имен в кластере.....
Вот мой кластер:

└─# kubectl get nodes
NAME STATUS ROLES AGE VERSION
cuba-kub-01 Ready etcd,master 2d5h v1.18.10+rke2r1
cuba-kub-02 Ready etcd,master 2d1h v1.18.10+rke2r1
cuba-kub-03 Ready etcd,master 2d v1.18.10+rke2r1
cuba-kub-04 Ready node 2d v1.18.10+rke2r1
cuba-kub-05 Ready node 47h v1.18.10+rke2r1
cuba-kub-06 Ready node 47h v1.18.10+rke2r1
✓ ��[ admin@cuba-kub-01 ]��[ 10.8.4.24 172.17.0.1 10.42.0.0 ]─[ 16:58:16 ]

Обратите внимания, что имена хостов все "короткие", они соответствуют хостнеймам машин. Поэтому пинг по короткому имени не пройдет, например, ping cuba-kub-02 вызовет ошибку. Во внутреннем DNS для этих хостов созданы записи, поэтому пинг по FQDN пройдет нормально:

└─# ping cuba-kub-02.haulmont.com
PING cuba-kub-02 (10.8.4.28) 56(84) bytes of data.
64 bytes from cuba-kub-02 (10.8.4.28): icmp_seq=1 ttl=64 time=0.263 ms

Теперь, собственно, проблема..... Я установил в кластер Прометеус, пытаюсь просто сделать port-forward для Grafana, находясь на первом мастере:

└─# kubectl -n monitoring port-forward prometheus-grafana-59bfb6b6bf-b476f 3000:3000
error: error upgrading connection: error dialing backend: dial tcp: lookup cuba-kub-06 on 10.5.0.3:53: server misbehaving
✗ ��[ admin@cuba-kub-01 ]��[ 10.8.4.24 172.17.0.1 10.42.0.0 ]─[ 17:05:53 ]


10.5.0.3 - это доменный DNS. Получается, Кубер ругается на то, что не может найти в DNS адреса cuba-kub-06.... Но там короткого и нет! Там есть FQDN - cuba-kub-06.haulmont.com

Я решил попробовать иначе - просто сделал Service, который пробросит порт 3000 нужного пода на NodePort. Сделал. У меня три воркера, по идее, Grafana должна быть доступна на любой рабочей ноде.... И по netstat я вижу, что нужный порт открылся на всех трех рабочих нодах....
Но! Реально загружается веб морда Графаны только на той рабочей ноде, где крутится под с Графаной, т.е., на cuba-kub-06 при попытке сменить ноду для подключения, браузер долго висит, а потом отваливается по таймауту.
Да и в Графане не открывается ни один дашбоард - говорит, что ошибка сервиса.
Такое ощущение, что отсутствует роутинг между рабочими нодами.....
Как быть?

6 ответов

8 просмотров

А просто добавить домен поиска чтобы он при коротком обращении поискал?

torquemada163- Автор вопроса
Aleksey Lazarev
А просто добавить домен поиска чтобы он при коротк...

куда? в настройки физического сетевого интерфейса на каждой машине?

torquemada163
куда? в настройки физического сетевого интерфейса ...

Ммм ну вообще он раньше дефолтно прокидывал как раз resolve conf с ноды - если ты не менял поведение - да добавляй туда

torquemada163- Автор вопроса
Aleksey Lazarev
Ммм ну вообще он раньше дефолтно прокидывал как ра...

В Ubuntu уже давно файл resolv.conf ни на что не влияет, в нем написано, что его не надо редактировать: └─# cat /etc/resolv.conf # This file is managed by man:systemd-resolved(8). Do not edit. # # This is a dynamic resolv.conf file for connecting local clients to the # internal DNS stub resolver of systemd-resolved. This file lists all # configured search domains. # # Run "resolvectl status" to see details about the uplink DNS servers # currently in use. # # Third party programs must not access this file directly, but only through the # symlink at /etc/resolv.conf. To manage man:resolv.conf(5) in a different way, # replace this symlink by a static file or a different symlink. # # See man:systemd-resolved.service(8) for details about the supported modes of # operation for /etc/resolv.conf. nameserver 127.0.0.53 options edns0

А что за сеть у тебя?

torquemada163- Автор вопроса

Коллеги, я идиот! ((((( Я несколько дней назад сделал в DNS запись, которой соответствуют все три айпишника рабочих нод (уже не помню, зачем)! И она первая вываливается при пинге по имени (я добавил в убунтовский netplan опцию search domain). Убил эту запись в DNS - все волшебно заработало! )))))

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

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

Всем привет, написал код ниже, но он выдает сегфолт, в чем причина? #include <stdio.h> #include <stdlib.h> #include <string.h> struct product { char *name; float price; };...
buzz базз
75
База данных не поможет. Шифрование не поможет. Какие там ещё варианты? Накидывайте.
КТ315
20
А табстоп это сообщение от окна или от элемента управления?
The Bird of Hermes
18
А как лучше конвертировать физический адрес в виртуальный при маппинге? В случае ядра у меня, например, direct mapping, первые 768МБ я как есть мапплю в higher half, а остальн...
Evg Resh
26
Открыл свой двухкилобайтный экзешник в x32dbg, а тут какая-то хрень. Смущает кнопка "выполнить до пользовательского кода", а что ещё может быть в файле помимо него ?
НѣкъиⰘижєжєиꙁъвьсєсвѣтьноѣсѣтиѥсть•
11
Мне были интересны дишные хаки и я нашёл любопытный способ на форуме через __traits, что-то вроде int delegate(int) fac = (int n) => n == 0 ? 1 : n * __traits(parent, {})(n - ...
Constantin F.
1
Вопрос тем кто смотрит видео и слушает подкасты - как вы потом ищете нужную вам информацию? Вот статью я прочитал, потом могу искать нужную мне часть банальным поиском. Пропус...
Aleksandr Druzhinin
4
Всем привет, подскажите/посоветуйте пожалуйста. Фаердак компоненты, имею одно место где бизнес хочет видеть при открытии формы список всех клиентов, это порядка 30к. Мои дово...
Sasha Sch
14
Ребят, если кто в курсе - скажите, а в загранке такое же засилье маркетплейсов? или там простые сермяжные интернет-магазины живут попроще?
Андрей [aharito] Харитонов
14
Коллеги, доброе утро. Запустил на удаленном хосте приложение (ручками зашел туда по ssh и запустил, не командой удаленно). Создал потом ssh-туннель, и с моей машины приложение...
Δημήτηρ
9
Карта сайта