Andor
@rgersh может есть чо сказать?
Алексей
На память не помню Завтра напомни, гляну
Никита
если у меня будет 200 нод, то я получу 200 arp-reply на один реквест
Дык L3 связность делай. Вешаешь vip на лупбек, маршруты к нему через ip хостов, профит.
Andor
На dummy!
𝚔𝚟𝚊𝚙𝚜
не надо, TRILL прекрасно работает
Никита
А это чего?
Sergei
не надо, TRILL прекрасно работает
мои седые волосы напоминают мне что это не всегда правда
𝚔𝚟𝚊𝚙𝚜
это как динмик роутинг только для L2
Etki
(чекнул аватарку, убедился что седых волос нет)
Sergei
(чекнул аватарку, убедился что седых волос нет)
нет, ты чекнул аватарку и убедился, что вся голова седыми не покрыта. а так есть :(
𝚔𝚟𝚊𝚙𝚜
у цискок эта технология называется FabricPath
Никита
Как-то страшновато на первый взгляд.
Sergei
сзади прячешь
на висках
𝚔𝚟𝚊𝚙𝚜
если у меня будет 200 нод, то я получу 200 arp-reply на один реквест
Тут ребята из MetalLB в слаке подсказали что это походу баг kube-proxy, что по идее он должен noarp флаг на интерфейс kube-ipvs0 выставлять
Алексей
глянул у меня там вообще дефолт по 0 но у меня и нод там мало на бродкаст получаю от всех а дальше с одного ответы
Алексей
на kube-route noarp стоит на фэйковом интерфейсе
Алексей
на kube-proxy точно нет
Алексей
просто на lvs в комплекте с keepalived net.ipv4.conf.br0.arp_ignore = 1 net.ipv4.conf.br0.arp_announce = 2 но там keepalived еще добавляет механику
Алексей
а почему у тебя -i а не -I
𝚔𝚟𝚊𝚙𝚜
где 10.99.178.96 - это любой clusterip/externalip
Алексей
)
𝚔𝚟𝚊𝚙𝚜
arping разный бывает)
𝚔𝚟𝚊𝚙𝚜
на kube-route noarp стоит на фэйковом интерфейсе
вот это оно самое, пора писать баг репорт
Алексей
[root@hw00 chemist]# arping -s 0.0.0.0 -I br1 192.168.0.201 ARPING 192.168.0.201 from 192.168.0.1 br1 Unicast reply from 192.168.0.201 [52:54:00:09:40:01] 0.614ms Unicast reply from 192.168.0.201 [52:54:00:09:40:02] 0.769ms Unicast reply from 192.168.0.201 [52:54:00:09:40:03] 0.797ms Unicast reply from 192.168.0.201 [52:54:00:09:40:03] 0.689ms Unicast reply from 192.168.0.201 [52:54:00:09:40:03] 0.684ms Unicast reply from 192.168.0.201 [52:54:00:09:40:03] 0.650ms Unicast reply from 192.168.0.201 [52:54:00:09:40:03] 0.631ms Unicast reply from 192.168.0.201 [52:54:00:09:40:03] 0.632ms ^CSent 6 probes (1 broadcast(s)) Received 8 response(s)
Алексей
это kube-route
Алексей
[root@hw00 chemist]# arping -s 0.0.0.0 -c 1 -I br1 192.168.0.201 ARPING 192.168.0.201 from 192.168.0.1 br1 Unicast reply from 192.168.0.201 [52:54:00:09:40:01] 0.594ms Unicast reply from 192.168.0.201 [52:54:00:09:40:02] 0.680ms Unicast reply from 192.168.0.201 [52:54:00:09:40:03] 0.770ms Sent 1 probes (1 broadcast(s)) Received 3 response(s)
Алексей
ну кидаю бродкаст получаю от всех
𝚔𝚟𝚊𝚙𝚜
да, у тебя походу таже проблема
Алексей
не особо вижу проблему
𝚔𝚟𝚊𝚙𝚜
ну это не проблема особо когда у тебя три ноды)
Алексей
у меня хостов мало, потому особо лишнее не парит
Алексей
чтоб не было проблемы нужно keepalived или что то наподобие добавлять
Алексей
что будет arp кидать
𝚔𝚟𝚊𝚙𝚜
но например если ты захочешь использовать MetalLB - это будет тебе мешать
Алексей
ну я не провайдер у меня не больше 4 - 5 внешних ip обычно
𝚔𝚟𝚊𝚙𝚜
у меня хостов мало, потому особо лишнее не парит
да, или Keepalived, но факт в том что externalIP не должен отвечать со всех нод, а только там где он действительно есть
𝚔𝚟𝚊𝚙𝚜
в принципе когда нод мало, это даже не баг а фича, т.к. тебе даже keepalived получается не нужен
𝚔𝚟𝚊𝚙𝚜
:)
𝚔𝚟𝚊𝚙𝚜
т.к. отвечают сразу все, трафик и так на рандомную ноду пойдет
Алексей
MetalLB не трогал, не знаю по моим кэйсам мне можно не париться, если начнет припекать то keepalived у меня он был встроенный, я его прикручивал на одной инсталяции к kube-route + те настройки для arp что ты выше кидал и все ок в принципе могу покопаться, отрыть манифесты
Алексей
в принципе к kube-proxy аналогично можно прикрутить
𝚔𝚟𝚊𝚙𝚜
MetalLB - это почти такой-же keepalived
𝚔𝚟𝚊𝚙𝚜
в режиме L2 в смысле
Алексей
ну я так понимаю externalIP -> keepalived + lvs это что то такое и получается
Алексей
я прав?
𝚔𝚟𝚊𝚙𝚜
А ты externalIP сейчас анонсишь как нибудь?
Алексей
прописываю в сервисе из пула и все
Алексей
ну в смысле у меня их есть несколько
Алексей
он вешается на lvs в итоге по факту отказоустойчиво )
Алексей
собственно как ты правильно заметил, это не баг а фича на малом количестве нод
Алексей
)
𝚔𝚟𝚊𝚙𝚜
MetalLB в режиме L2 - у него всего два компонента: controller и speaker controller - он просто читает кофиг, и назначает айпишники сервисам. speaker - он запускается демонсетом и делает тоже самое что ты имеешь сейчас, просто на любые arp-запросы отвечает, что нода имеет этот айпишник.
Алексей
есл внешние интерфейсы более менее статичны этого за глаза.
𝚔𝚟𝚊𝚙𝚜
интересно то, что ты говоришь dummy-интерфейс имеет noarp флаг но arp-ответы по прежнему ходят
𝚔𝚟𝚊𝚙𝚜
kube-proxy кстати тоже его прописывает
𝚔𝚟𝚊𝚙𝚜
и тоже не работает
Andrey
Гайс, а реально с гуглового облака подключить ноды с GPU к кластеру k8s на baremetal? Какие могут быть проблемы?
Алексей
) ну тут толи баг толи фича сложно разобраться у меня когда ядро с 3 на 4 сменилось lvs накрылось медным тазом в режиме direct routing
Алексей
пока # martian packets for new kernel # http://archive.linuxvirtualserver.org/html/lvs-users/2013-10/msg00002.html net.ipv4.conf.all.accept_local = 1 net.ipv4.conf.br1.accept_local = 1 net.ipv4.conf.br0.accept_local = 1 вот так не сделал
𝚔𝚟𝚊𝚙𝚜
Баг/фича. В любом случае должно быть определенно однозначное поведение. Если это баг - то надо исправить, если фича - сделать оговорку в документации. Можешь сказать версию твоего kube-router?
Алексей
cloudnativelabs/kube-router latest 85f72624a9f7 5 months ago доступа до репы нет
Алексей
по хэшу только смотреть
Алексей
чет я не уверен на тему DSR разбираться сейчас лень в терминологии часть VIP у меня публичные ip часть VIP приватные RealIP все приватные на хостах по 2 сетевки одна в инет, вторая в приватную сеть
𝚔𝚟𝚊𝚙𝚜
о, спасибо, а то я там уже пишу распинаюсь
Алексей
при включении того что у них написанно оно в таком виде работать перестанет
Алексей
нужен keepalived
Алексей
или что то что будет поднимать реальный ip на физическом интерфейсе
Никита
А как в direct routing path MTU discovery работает и вообще ICMP?
Ну, по идее, icmp-сообщение будет отправлено на source ip, так что ничего не меняется.
Kyrylo
Сорян всем
Vladimir
Господа, а есть ли разниза, обращаться к сервисам по имени или по fqdn?
Vladimir
есть подозрение, что по имени оно резолвит докеровский линк и при пересоздании пода не обновляет его