@kubernetes_ru

Страница 217 из 958
Denis
25.07.2017
14:19:44
хм а как это должно работать если один и тот же путь на два сервиса?

Alexander
25.07.2017
14:21:26
я вот что нашел: https://github.com/kubernetes/ingress/issues/257 / https://github.com/kubernetes/ingress/pull/981 сразу скажу - это не то что мне надо, то есть тут сохраняется тенденция привязки 1 service - 1 endpoint (ибо 1 ClusterIP), но по крайней мере я прочитал вот это https://github.com/kubernetes/ingress/issues/257#issuecomment-278998855 соответственно может как-то подхачить Endpoints API? еще я заметил упоминания о kong api, как там через lua апстримы менеджатся..

мне надо между двумя сервисами балансировать одно и то же доменное имя целиком

у меня один сервис это один под, там никогда не будет replicas > 1

Google
Let Eat
25.07.2017
14:25:28
сделайте другой сервис, искусственный, пусть он покрывает все ваши поды

и укажите его в ingress

пусть даже ClusterIP: None

Alexander
25.07.2017
14:26:48
создать какой-то третий сервис и замапить его на эти два и ингресс для него запилить?

Let Eat
25.07.2017
14:27:02
ага

Alexander
25.07.2017
14:27:17
просто мне нужно еще обеспечить доступность per-service URL извне

Let Eat
25.07.2017
14:27:19
ну можете первые два сервиса удалить за ненадобностью , если они нигде больше не нужны :)

ну для per-service сделайте ingress с различающимся path и/или host

Alexander
25.07.2017
14:28:22
то есть прикол в том, что есть три урла: global.domain.net backend-1.domain.net backend-2.domain.net клиент изначально на global.domain.net приходит, но после первого запроса дальше он будет общаться с каким-то из backend-1/backend-2, в зависимости куда раунд робин его направит

Let Eat
25.07.2017
14:29:02
ну вот, у вас 3 сервиса и 3 ingress

Alexander
25.07.2017
14:29:13
различающиеся path да, будут работать, но нужно чтобы корень балансировался

формально мне тупо хватит чтобы можно было два айпишника в апстрим запихнуть, чтоб они и по отдельности работали, и глобально - под балансируемым доменом. Но с концепцией эндпойнтов в кубере по ходу это не так просто сделать

Let Eat
25.07.2017
14:31:10
я может чего-то не вижу, но всё как раз просто

Google
Alexander
25.07.2017
14:31:19
я знаю что это тупой дизайн и неправильно, но вот так...

как? я просто уже долго копаюсь и понять не могу)

Let Eat
25.07.2017
14:32:54
apiVersion: extensions/v1beta1 kind: Ingress spec: rules: - host: "global.domain.net" http: paths: - backend: serviceName: allBackendsService servicePort: 8888 - host: "backend-1.domain.net" http: paths: - backend: serviceName: backend-1 servicePort: 8888

Alexander
25.07.2017
14:34:17
а в allBackendsService мне надо еще один нжинкс запихать который будет разбрасывать между backend-{1,2} ?

Let Eat
25.07.2017
14:34:25
нет

это просто сервис у кого в селекторе выбираются backend-1 и backend-2

Zon
25.07.2017
14:35:03
как? я просто уже долго копаюсь и понять не могу)
Тут поможет концепция лейблов. Если у двух подов одинаковые лейбл ( хоть один ) из них делается k8s сервис

Alexander
25.07.2017
14:35:49
гм, щас буду гуглить, спасибо, об этом я не думал

Let Eat
25.07.2017
14:37:17
если никаких общих значений лейблов нет, но есть общие имена лейблов, то можно тупо перечислить значения selector: matchExpressions: - {key: appName, operator: In, values: [backend-1, backend-2]}

Alexander
25.07.2017
14:38:12
то есть это пустой сервис только на селекторах?

Let Eat
25.07.2017
14:38:23
а бывают другие?

Alexander
25.07.2017
14:40:37
ну без селекторов бывают) https://kubernetes.io/docs/concepts/services-networking/service/#services-without-selectors ладно, буду смотреть. я в этой горе абстракций путаюсь иногда. спасибо за мысли

Let Eat
25.07.2017
14:41:01
ну без селекторов он еще "пустее" :)

Zon
25.07.2017
14:42:25
то есть это пустой сервис только на селекторах?
Суть в том, что отдельный под для этого сервиса запускать не нужно, он сам найдет бекенды по селекторам

Alexander
25.07.2017
14:46:19
я этого не знал, уже черти куда залез :) спасибо

Дмитрий
25.07.2017
16:00:31
Заметил, что последняя версия кубера не может нормально работать с частным реестром, который требует по https от него клиентские сертификаты. Причем наблюдается следующая картина: sandbox-образ загружается нормально, а обычные образы - нет. Такая же картина с подключением по HTTP с Basic Auth. В логах ругается, что не может поднять сетку)) Нет чтобы нормально в логах выдать ошибку подключения к реестру, он ругается на сетку! Хваленый кубер-кубернетс !!!!!!!!!!!!!!

Знаю-знаю, никто с этим не сталкивался))

Andrey
25.07.2017
16:06:38
оффтоп: поковырял istio, поднял пару сервисов на нем но так и не понял нафиг он нужен... кто-ниудь достиг просветления?

Google
Andrey
25.07.2017
16:07:52
https://istio.io/

Дмитрий
25.07.2017
16:11:21
https://istio.io/
хороший вопрос на который лично я в данный момент ответить е могу по причине больной головы после найденных грабель k8s

Дмитрий
25.07.2017
16:12:30
Вы прямо как первый день за мужем
в плане том, что не значл что он глючный? .... в первый))

Alexander
25.07.2017
16:15:30
если никаких общих значений лейблов нет, но есть общие имена лейблов, то можно тупо перечислить значения selector: matchExpressions: - {key: appName, operator: In, values: [backend-1, backend-2]}
Спасибо, проверил - такая схема создала по эндпоинту на каждый матч селектора и в ингрессе все эндпоинты помещаются в апстрим.

Andrey
25.07.2017
16:15:42
Говорят нужен, завтра послезавтра буду ковырять. У вас получилось истио внутрь запихнуть? Есть подводные камни?
на minikube поднял, из подводных камней - то что на следующей день после перезапуска куба перестал работать с ошибкой которая не гуглится :)

Andrey
25.07.2017
16:16:50
ну, я с самого хайпового начал )

Konstantin
25.07.2017
16:17:54
Так вроде как linkerd более состоявщийся, хотя могу ошибаться.

bebebe
25.07.2017
16:29:14
Дмитрий
25.07.2017
16:30:31
Вообще regisry за nginxом доставляла мне много головной боли, пока я не научился правильно делать proxypass
В данный момент я этому учусь)) Хотя все работало, пока я не обновил docker-distribution до версии 2.6.2

В данный момент я этому учусь)) Хотя все работало, пока я не обновил docker-distribution до версии 2.6.2
Самое интересно, что когда я откатился до предыдущей версии, ничего не изменилось

bebebe
25.07.2017
16:38:02
Пиши статью :)
Она уже есть, не моя, если будете испытывать боль в этом направлении пинганите, нагуглю

Alexander
25.07.2017
16:44:48
пусть даже ClusterIP: None
в общем-то, с учетом https://github.com/kubernetes/ingress/pull/981 (аннотация правда даже еще не заиндексировалась в гугле) мы можем подпихнуть в апстрим clusterIP за которым несколько endpoints, ибо на ноде они с -m statistic --mode random --probability раскидываются

Google
Alexander
25.07.2017
16:45:42
прокси с принудительной балансировкой :)

Дмитрий
25.07.2017
16:53:41
Пиши статью :)
А я просто напишу скрипт для автоматического развертывания с парсингом и всем таким

Andrey
25.07.2017
18:04:32
Так вроде как linkerd более состоявщийся, хотя могу ошибаться.
да, на него у меня больше планов: во-первых, стабильнее, во вторых, он деплоит не по контейнеру в каждый под а по поду на ноду что существенно экономит ресурсы у istio правда лучше работа L4 из коробки, но мне неактуально так как только http в кубере пускаю - так что переключился на ковыряние linkerd, скажу если до прода дойдет :)

Evgeny
25.07.2017
18:34:56
Всем доброго вечера. Тестируем k8s, встал вопрос как балансировать количество pod между нодами. У нас получается 60/40 70/30 постоянно. Лимиты не используем, т.к. пока это дев окружение. Может кто подсказать?

Andrey
25.07.2017
18:45:39
https://buoyant.io/2016/11/04/a-service-mesh-for-kubernetes-part-iv-continuous-deployment-via-traffic-shifting/ - прикольненько

Admin
ERROR: S client not available

Dmitry
25.07.2017
19:22:17
А что не так с джавой?

Let Eat
25.07.2017
19:25:11
Жор, GC залипы, постоянные подкрутки 100 рычажков

Denis
25.07.2017
20:11:25
Согласен, жвм на инфраструктуру не хочется брать.

Хотя сам на скале пишу :)

Paul
25.07.2017
20:13:22
А что не так с джавой?
с джавой все отлично, если в нее уметь. Но в нее не умеет 999 из 1000

Sergey
25.07.2017
20:23:47
Привет, а занимается ли кто-то управлением пользователями и разграничением доступа (ролями) в кубернетесе? Или все не парятся и ходят под одним-единственным базовым админ аккаунтом, у которого есть доступ ко всем объектам в кубе? Пользуются ли каким-то дашбордом? Если дефолтным, то как обеспечивают к нему доступ с ноутбуков сотрудников? Если не базовым, то каким и как настраивают доступ?

Sergey
25.07.2017
20:45:18
coreos/dex довольно стабильно работает

Fike
26.07.2017
01:35:16
Жор, GC залипы, постоянные подкрутки 100 рычажков
ой, да ладно вам про гц залипы в приложении на сто метров

Указал размер хипа и куда дамп сбрасывать при оом и вперед

Google
Fredfordeli
26.07.2017
01:55:18
https://t.me/moneymafia - схемы и мануалы для заработка на любой вкус и цвет, приватные материалы с закрытых форумов.

Denis
26.07.2017
09:16:32
А как экспозить ингресс?

Maksim
26.07.2017
09:17:36
эмммм??ОО

ингресс это правило по которому ингресс-котроллер настраивает прокси

Denis
26.07.2017
09:17:52
Как пустить внешний трафик на поды nginx например

Maksim
26.07.2017
09:17:59
gce или nginx

Denis
26.07.2017
09:18:04
я знаю

Maksim
26.07.2017
09:18:28
ставишь ингресс контроллер, пишишеь ингресс

и ингресс котроллер перенастраивает прокси

либо через nodePort

Denis
26.07.2017
09:19:08
то есть снаружи попасть вариант только через NodePort?

Maksim
26.07.2017
09:19:40
прокси чем не вариант?

Denis
26.07.2017
09:19:58
под прокси что имеется в виду?

Maksim
26.07.2017
09:20:38
https://ru.wikipedia.org/wiki/%D0%9F%D1%80%D0%BE%D0%BA%D1%81%D0%B8-%D1%81%D0%B5%D1%80%D0%B2%D0%B5%D1%80

Denis
26.07.2017
09:20:47
капитан

Maksim
26.07.2017
09:20:54
Вот именно это и имеется ввиду

Denis
26.07.2017
09:20:56
Если nginx запущен сам в подах, как на них попасть снаружи?

Maksim
26.07.2017
09:21:12
nodePort

Страница 217 из 958