M
грешил на фланнел, пробовал откатывать flannel до 0.6.2 такая же картина, конфиг проверенный, на другом кластере работает норм, из отличий версия кореос
M
также заметил, что docker inspect для непингующихся контейнеров не показывает ип в NetworkSettings, хотя из контейнера ип видно и docker network inspect bridge их показывает
M
хотя последнее видимо совпадение, сейчас нашел нормальный непингующийся контейнер с ип в NetworkSettings, arp -a на такие ip пишет <incomplete> on docker0
M
13: veth893da0a@if12: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1472 qdisc noqueue state UP group default link/ether 12:f6:91:c5:71:80 brd ff:ff:ff:ff:ff:ff inet6 fe80::10f6:91ff:fec5:7180/64 scope link valid_lft forever preferred_lft forever 15: veth84e29ce@if14: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1472 qdisc noqueue master docker0 state UP group default link/ether 7a:82:c3:e3:e9:32 brd ff:ff:ff:ff:ff:ff inet6 fe80::7882:c3ff:fee3:e932/64 scope link valid_lft forever preferred_lft forever
M
у тех что без сети нет master docker0
G72K
сеть flannel, что еще заметил разницу ip addr sh
flannel кажется по-разному может конфигурироваться. речь о том как kubelet настроен?использует CNI плагины?
M
нет, не использует чистый фланнел
M
фланнел сеть работает, я могу пинговать с одной машинки подсеть другой машины, тут скорее глюки докера, он не всегда добавляет к сети master docker0
M
вот еще dmesg инициализацию на disabled state
M
worker02 core # dmesg -T|grep veth4b0 [Sun Apr 30 02:58:36 2017] docker0: port 4(veth4b02130) entered blocking state [Sun Apr 30 02:58:36 2017] docker0: port 4(veth4b02130) entered disabled state [Sun Apr 30 02:58:36 2017] device veth4b02130 entered promiscuous mode [Sun Apr 30 02:58:36 2017] IPv6: ADDRCONF(NETDEV_UP): veth4b02130: link is not ready [Sun Apr 30 02:58:36 2017] docker0: port 4(veth4b02130) entered blocking state [Sun Apr 30 02:58:36 2017] docker0: port 4(veth4b02130) entered forwarding state [Sun Apr 30 02:58:36 2017] device veth4b02130 left promiscuous mode [Sun Apr 30 02:58:36 2017] docker0: port 4(veth4b02130) entered disabled state [Sun Apr 30 02:58:36 2017] IPv6: ADDRCONF(NETDEV_CHANGE): veth4b02130: link becomes ready worker02 core # dmesg -T|grep veth839 [Sun Apr 30 02:58:49 2017] docker0: port 10(veth839a387) entered blocking state [Sun Apr 30 02:58:49 2017] docker0: port 10(veth839a387) entered disabled state [Sun Apr 30 02:58:49 2017] device veth839a387 entered promiscuous mode [Sun Apr 30 02:58:49 2017] IPv6: ADDRCONF(NETDEV_UP): veth839a387: link is not ready [Sun Apr 30 02:58:49 2017] IPv6: ADDRCONF(NETDEV_CHANGE): veth839a387: link becomes ready [Sun Apr 30 02:58:49 2017] docker0: port 10(veth839a387) entered blocking state [Sun Apr 30 02:58:49 2017] docker0: port 10(veth839a387) entered forwarding state [Sun Apr 30 02:58:49 2017] docker0: port 10(veth839a387) entered disabled state [Sun Apr 30 02:58:49 2017] docker0: port 10(veth839a387) entered blocking state [Sun Apr 30 02:58:49 2017] docker0: port 10(veth839a387) entered forwarding state
M
виновником оказалась преднастройка от ovh - линк в /dev/null в /etc/udev/rules.d/80-net-setup-link.rules
Sn00part
крутая преднастройка 👍
𝕍ℤ
господа, а кто как мапит исходники в контейнеры? на текущем шаге способы собирать что-то в дженкинсе и грузить напрямую из гита не подходят, интересуют альтернативные варианты
Etki
Я чет не понимаю при чем тут куб вообще
Etki
И какие альтернативы монут быть
Sn00part
почему не подходят?
Sn00part
чтобы что то собирать надо иметь все для сборки
Sn00part
а этот набор даже интерна админа доведет до инсульта
Sn00part
в проде ничего этого быть не должно никогда
Sn00part
и как вы это тестить будете?
Sn00part
или тут петонист пришёл, щас пипом все поставим ачотаково
Sn00part
кубернетис типа прод. там должен быть чистый протестеный бинарь и все
Sn00part
чём плох обычный подход с дженкинсом, кучей тестов и возможно стейджинг ом?
Sn00part
а стопицот плагинов для дженкинса и заточеный под него джава программист позволяет дженкинс использовать везде и для всего. даже воду в туалете смывать при желании.
Sn00part
а если кажется, что это не подходит, то в консерватории проблемы, кажется.
𝕍ℤ
очень рад, что вы все на дженкинсе делаете, даже воду смываете, но мой вопрос в другом был. не хотелось бы разводить холивары, интересует, монтирует ли кто-нибудь на проде через hostPath
Etki
нет, конечно
𝕍ℤ
ну а если исключить сборку контейнеров с исходниками и всем-всем-всем, то какие альтернативы?
Etki
Никаких нормальных
Etki
Это все напоминает проблему ХУ. Что мешает билдить образы?
Zon
Билдить и выкатывать куча вариантов, а вот делать в бою лайврелоад из примапленой директории, меняя код через самбу или sshfs - прямой путь в ад. Разрабатывать можно локально
Etki
Если появится проект на компилируемом языке, то там сразу ой всё
𝕍ℤ
билдить образы мешает юниксовская привычка разделять зоны ответственности. поясню. есть, например, отлаженный и оттестированный образ nginx, такой же образ fpm. есть отдельно код бэка и фронта, они друг от друга не зависят статикой. и, по идее, что бы всю эту мозаику сложить в работающее приложение, нужно настроить деплои в одном неймспэйсе, запамить туда исходники, и радоваться. т.е. не пересобирать каждый раз образы, которые и так идеально работают, а, например, билдить volume с исходниками. и мне удивительно, что такой подход среди адептов куба считается ненормальным
Etki
в кубе единица работы - это контейнер. контейнер неделим, и для куба нет разницы, завалился контейнер из-за недочетов сборки или ошибки синтаксиса в приложении
Etki
но в общем вся контейнерная философия пиравнивает приложение к образу
Etki
все это "работает локально - работатет в проде"
Etki
и ответственность все-таки обычно делят горизонтально, а здесь получается вертикально
𝕍ℤ
ладно, спасибо за советы) глупо идти против best practiсe, поэтому пока вместо понимания смирюсь)
𝕍ℤ
интересно было бы послушать мнение @idvoretskyi как разработчика, так сказать, из первых уст
Anonymous
ладно, спасибо за советы) глупо идти против best practiсe, поэтому пока вместо понимания смирюсь)
Нельзя мириться. Сломай систему, наступи на грабли, а уже только потом смирись )
Anonymous
Тогда я наверно контекста не понял, сори
Etki
Все равно под состоит из контейнеров и "ой, завалилось" начнется с выхода контейнера
Etki
Так ладно прекращаю писать непонятное
Anonymous
Не факт что падение контейнера приведет к решедулингу или ещё каким реакциям
Anonymous
Повиснет в статусе completed и все ;(
Anonymous
Я про "падение" с кодом 0
Anonymous
и вопроса я не понял (точнее какой из них)?
𝕍ℤ
вопрос, как задумывалось - билдить приложение в образ all-in-one или настраивать микросервисы и мапить туда исходники?
Anonymous
зависит от приложения, но по-нормальному - микросервисы
𝕍ℤ
зависит от приложения, но по-нормальному - микросервисы
вот и у меня сейчас на микросервисах, но сообщество отговаривает)
Etki
да, я понимаю, что под переподнимается целиком в случае чего
Anonymous
для оператора куба
да без разницы. Кубернетес не оперирует контейнерами непосредственно
Etki
как он тогда работает-то? )
Anonymous
мало того, в случае с решениями типа virtlet - даже о контейнерах речь не идет
Anonymous
да, контейнеры под капотом. Но если мы говорим именно о единице для operations - это pod. Внутри него контейнеры, но это другой уровень абстракции
Etki
с виртлетом не работал, но я все-таки глубокую внутрянку тогда имел в виду.
Anonymous
да, тогда контейнеры (или что там внутри пода)
𝕍ℤ
@idvoretskyi подскажите способы мапить, если не сложно. в идеале, хотелось бы собирать volume, давать ему label с версией и монтировать в контейнер
Anonymous
Оффтоп: аналогично люди заблуждаются когда говорят что с помощью Kubernetes управляют приложениями. Kubernetes менеджит сервисы, не приложения. Приложения - на уровень выше сервисов
𝕍ℤ
да
Anonymous
а зачем их мапить в вольюм? Есть же git и прочие svn
𝕍ℤ
а зачем их мапить в вольюм? Есть же git и прочие svn
с фронтом не всё так гладко выходит, там extjs, его предварительно собирать надо, и в планах так и сделаю, но пока хотел просто собраные файлы замапить и попал в тупик
Anonymous
Ложи в configmap (шутка, не надо ;)
𝕍ℤ
-_-
𝕍ℤ
не до такой уж степени я и профан)
Anonymous
ну можно в вольюм, почему​ б и нет
Anonymous
но лучше собирай готовый имейдж - так проще будет (если я правильно понимаю проблему)
𝕍ℤ
ну так и советуют. только сейчас у меня имейдж nginx, на котором фронт, и все урлы api и rest перенаправляются на fpm, на котором бэк. а придется из всего этого один образ собирать
𝕍ℤ
что по идее идет вразрез с философией докера, где один сервис - один образ