George
куб - это не магическая технология, которая решает все проблемы, скорее нечто типа супового набора. Если ты повар, то сваришь вкусный суп. Если начинающий, то пару запорешь
George
А это сложная задача?
нет, но вы тут просто утверждаете, что это полная фигня
George
что тебе еще надо?
Lucky SB
ранчер зло
George
поясни. чем он не поможет ?
я так понимаю, что коллега имеет в виду, что кубовый днс обновляется с задержкой - раз, два - он отдает все поды, а не конкретный один
George
ранчер зло
почему? норм тема
Валентин
поясни. чем он не поможет ?
Ну если ингресс юзать - надо указыват домены. Я ж не смогу сказать сервису че-то типа backend.api.svc.cluster.local - ингресс на такое не повесится
George
конечно, это не очень эффективно с точки зрения маршрута пакета... но что поделать
Etki
полезай внутрь сраного кластера, синдзи
Валентин
Так. Вот щас есть у меня ингресс для домена www.mydomain.ru И если я юзаю ингресс доя балансировки приложух внутри кластера - мне придется такого плана самому завести домены, пользоваться автоматически созданными от самого куба не выйдет
Lucky SB
Vadim
полезай внутрь сраного кластера, синдзи
Нужно больше ингресс-контроллеров, милорд
Lucky SB
Так это изменение логики приложения же?
да там и так все запущенно до терминальной стадии. только ампутация поможет
Lucky SB
ну значит ждем, пока само отвалится
Alexander
ингресс для балансировки http. если твои сервисы не соблюдают принципы микросервисности, когда общение идет через одну точку входа в API и общаются между собой напрямую, и при этом не умеют ретрай и прочее. то можешь для только для них поднять отдельный дополнительный ингресс-контроллер, который в интернет трочать не будет
Framework от Netfix для микросервисов использует спец клиент для общения микросервисов между собой. Он сам делает балансировку, устойчивости на клиенской стороне. Так что разные бывают принципы у микросервисов. Хотя возможно это и поменялось, давно не сморел что у них.
Alexander
ну значит ждем, пока само отвалится
А виноват будет Путин, что не запретил использовать Кубер
Vadim
Что мешает в ингрессе прописать - host: test-ingress.default.svc.cluster.local и ходить в него по внутренней сети?
тем что coredns ложил на ваш ингресс и будет все равно отдавать айпишник сервиса?
Dmitrii
Дак создать сервис который указывает на ингресс прямо? selector: app: nginx-ingress component: controller release: nginx-ingress
Peter
Если я редактирую deployment через kubectl edit deploy, то pod сам перезапустится?
Lucky SB
тем что coredns ложил на ваш ингресс и будет все равно отдавать айпишник сервиса?
они хотят свой отдельный балансировщик-ингресс-контроллер под каждое приложение-сервис
George
они хотят свой отдельный балансировщик-ингресс-контроллер под каждое приложение-сервис
Ну, ты прав, что у нас все ходило через внешний ингрес, фу-фу-фу
George
Либо у меня такое чувство, что коллеги используют консул для Дискавери живых сервисов 😳
Lucky SB
Если я редактирую deployment через kubectl edit deploy, то pod сам перезапустится?
зависит от того что ты редактируешь. то так да. будет проведена процедура роллинг апдейта
Dmitrii
Очевидно что надо просто поставить Istio на самом деле и проблема решена
Vadim
они хотят свой отдельный балансировщик-ингресс-контроллер под каждое приложение-сервис
нет ну дело полезное только а) app-unaware будет слабая поделка вида NLB только на энвоях \ хапрокси б) Service ничего такого позволяет, так что либо тонны аннотаций либо свои CRD в) тут с ингрессом разобраться не могут пока что
Roman
Привет! Помогите разобратсья с резолвом, на всех нодах днс просписал, с нод резолвится в кубер ни в какую. coredns под на 3й ноде: jenkins-596fdddf64-dh6wz 1/1 Running node3 с нее резолвится: [rivanov@node3 ~]$ host mbp-prm-runner.dom.local mbp-prm-runner.dom.local has address 10.252.58.140 из пода нет... kubectl exec jenkins-596fdddf64-dh6wz ping mbp-prm-runner.dom.local ping: mbp-prm-runner.dom.local: Name or service not known в логах core dns только такие попытки: 2019-07-03T13:22:14.898Z [INFO] 10.233.93.0:46784 - 1818 "A IN mbp-prm-runner.dom.local.default.svc.cluster.local. tcp 71 false 65535" NXDOMAIN qr,aa,rd 164 0.000384568s 2019-07-03T13:22:14.901Z [INFO] 10.233.93.0:46784 - 24972 "A IN mbp-prm-runner.dom.local.svc.cluster.local. tcp 63 false 65535" NXDOMAIN qr,aa,rd 156 0.00024648s 2019-07-03T13:22:14.905Z [INFO] 10.233.93.0:46784 - 6005 "A IN mbp-prm-runner.dom.local.cluster.local. tcp 59 false 65535" NXDOMAIN qr,aa,rd 152 0.000459704s /etc/resolve.conf: # Generated by NetworkManager search dom.local nameserver 10.252.58.3 nameserver 10.252.58.4 nameserver 8.8.8.8 coredns configmap: data: Corefile: | .:53 { log errors health kubernetes cluster.local in-addr.arpa ip6.arpa { pods insecure upstream /etc/resolv.conf fallthrough in-addr.arpa ip6.arpa } prometheus :9153 forward . /etc/resolv.conf cache 30 loop reload loadbalance } Куда еще копать? чет руки уже опускаются.
Dmitrii
ndots:5
Roman
ndots:5
это мне ?
Dmitrii
Ага
Roman
Ага
почитаю спс
Anton
Фолкс, а есть какой-нибудь фреймворк или набор скриптов для чека что в поде у тебя соседи\другие сервисы живы прежде чем стартовать? типа такого, https://github.com/docker-library/postgres/issues/146 только более доработанного? фреймворк какой там чтоли а?
Евгений
Можно лок в etcd брать
George
@vrutkovs точно знает ответ на этот вопрос )
Anton
обычно не заморачиваются. проверяют готовность соседа от которого зависишь - если ее нету - то умираем. куб потом сам запустит новый контейнер
Ну не всегда это можно, хорошо бы чтобы писалось приложение так, но когда это тебе передали как коробка в виде джарника и он например залипает тоска на хелсчек ответит что то но внутри он будет сломанный, и куб из-за того что он не упал, не порестартит
Anton
Нормально если только база, но у меня база, кв, amqp/Kafka/nats/rmq, или эндпойнты разные например, один graphql другой grpc
Anton
Кто то ведь делал что-то подобное, может есть фреймворк какой на гошке м?
Nikita
Гайз, а есть уже в компании которые саппортят istio?:)
Anton
Можно лок в etcd брать
А как? В тот же что основной(хммм) или рядом деплоить для нужд приложения?
Nikita
они вроде в клауде только это делают у себя, не?
Nikita
речь про in-house кластеры
G72K
Остальные не парятся
Валентин
Все так.кому это важно пишут preStop скрипт sleep 10
Эх :( Вот и я таким страдаю, а хочется все по красоте
G72K
preStop красиво и работает в отличие от мешей
Валентин
Я уже после той дискуссии боюсь спрашивать, юзал ли кто macvlan или ipvlan, т.к в тестах вроде огонь, да и macvlan очень понятный, но с ними ж iptables тоже не работает...
Евгений
preStop красиво и работает в отличие от мешей
Меши тоже работают, если заливать их боблом
George
Меши тоже работают, если заливать их боблом
О, да, давайте удобрять меши кровью и слезами админов и сжигать денежные мешки во славу богов гугла
Vadim
не волнуйся, твой мешок сжигать не будем
Евгений
Всё-таки нельзя сказать, что они не работают
George
не волнуйся, твой мешок сжигать не будем
Спасибо за заботу о моей психике, дорогой
Евгений
Я уже после той дискуссии боюсь спрашивать, юзал ли кто macvlan или ipvlan, т.к в тестах вроде огонь, да и macvlan очень понятный, но с ними ж iptables тоже не работает...
У меня на 48'ом сервере при гигабите мелкопакетного трафика macvlan умирал, т.е. отваливалось всё, что на нём висит.
Евгений
Но так норм, очень топорный и простой
Евгений
Vadim
достаточно некубового оффтопа, спасибо
Валентин
Ну бридж не умирал
Бридж + что? Там ж возможны варианты :)
Евгений
Валентин
Про докер это оффтоп уже?
Да ну какой докер-то в 2019 :)
Евгений
Под кубером
Евгений
А у вас крио?