Mikhail [azalio]
кто-нибудь в курсе?
Mikhail [azalio]
особенно настораживает что мне отдают 403 на доку http://docs.romana.io )
Ivan
Не пугайтесь, они выходят на ICO
Ivan
:E
Дмитрий Харитонов
Такой вопрос у меня мультимастер, но kubectl get componentstatuses ищет controller-manager и scheduler на локалхосту почему-то Кто-ниубудь знает где прописывается путь к этим сервисам?
Дмитрий Харитонов
нормально, это бага kubelet и вместо того чтобы её почнить, они всё componentstatuses сделали deprecated)
Mikhail [azalio]
https://romana.io/docs/
Documentation is available here.
Mikhail [azalio]
here == http://docs.romana.io
Sergey
все норм, ребята авс осваивают
Sergey
< HTTP/1.1 403 Forbidden < x-amz-request-id: 9040F56F7A211FCA < x-amz-id-2: Jjx02adA89BeJvVeCSM+rECxb1ISYNgznMnrHVFnAzvzVJgsSPNqJJqsN2RsGzwrwpxMEGCMH/Y= < Content-Type: text/html; charset=utf-8 < Content-Length: 338 < Date: Wed, 20 Jun 2018 12:13:27 GMT < Server: AmazonS3
Denis
кажется не успею добраться
Будет запись в https://t.me/kubernetesMSK
Sergey
https://www.youtube.com/watch?v=7VRyeMxQqTA
Sergey
это оно?
Александр
это оно?
Сегодня будет в 19 вроде, это трансялция?
Sergey
ну вот это она
Sergey
ток почему то трансляцией делюсь я а не организаторы 🤔
Denis
Блин, такой сюрприз испортили
Denis
Готовьте вопросы:)
Denis
Репортаж будет в https://t.me/kubernetesMSK
Pavel G
Может и правда не доехать а послушать транлсяцию. Блин)
Denis
Через 60 минут начинаем! 🚀
Mikhail [azalio]
Говорят гостевого wifi нет
Pasha Chalyk
Все так)
Denis
Приятные мелочи на готове :)
Nikolay Markov
Ingress
а ингресс умеет трафик балансировать по тэгам?
Nikolay Markov
или ему надо каждый раз список айпишников явно скармливать?
Andrey
а ингресс умеет трафик балансировать по тэгам?
По тегам? Список IP? Я не совсем понимаю вашей архитектуры.
Nikolay Markov
По тегам? Список IP? Я не совсем понимаю вашей архитектуры.
ну, у нас ингресс используется, чтобы разные пути по запросу на внешний для кластера домен маппить на разные порты на воркерах
Nikolay Markov
но чтобы оно работало - приходится сейчас прописывать список айпишников этих самых воркеров явно внутрь ресурса ингресса
Nikolay Markov
можно этого избежать?
Andrey
Тогда ведь можно просто указать на сервис, а сервис привязать через selector к нужным подам.
Andrey
Как всё и делается обычно. Или я чего-то недопонимаю?
Nikolay Markov
я не очень сам знаю пока, как именно трафик балансируется на сервисе. Вроде как в ингрессе уже есть ha-proxy или nginx, зачем тогда трафик дополнительно еще и через сервис гнать?
Nikolay Markov
или я неправильно рассуждаю?
Andrey
Давай разберём подробно.
Andrey
Есть Ingress Controller. Это что угодно, что взаимодействует с API Kubernetes и понимает, что такое Ingress объект в Kubernetes и позволяет роутить трафик снаружи внутрь кластера.
Andrey
Контроллер может быть хоть nginx, хоть haproxy, хоть traefik, и есть ещё тонна реализаций.
Andrey
Мы используем этот. По совместительству самый популярный. https://github.com/kubernetes/ingress-nginx
Andrey
У вас какой?
Nikolay Markov
окей, да
Nikolay Markov
у нас на основе ha-proxy сейчас стоит
Nikolay Markov
его не я настраивал, не помню точно, откуда его взяли
Andrey
Я расскажу, как этот работает, а haproxy по аналогии должен уметь всё, только я с ним не работал. Для него создаётся т.н. Ingress ресурс, там описывается список хостов и URL paths и куда их роутить. Это им объекта Service и порт в нём.
Andrey
Сервис в свою очередь указывает на нужные поды с воркерами.
Andrey
Nginx получается список IP из объекта Endpoint, который автоматически создаётся вместе с сервисом.
Andrey
И по нему делает балансировку по свои внутреннием механизмам (upstreams).
Nikolay Markov
да, это я, вроде как, понимаю. А что если я не хочу явно список хостов передавать?
Andrey
wildcard звёздочку ввалить в Ingress объект?
Nikolay Markov
а хочу спокойно добавлять воркеры без изменений в самом контроллере
Andrey
На нескольких клиентах работает.
Andrey
Но это сильно зависит от самого контроллера. Nginx Ingress Controller поддерживает.
Nikolay Markov
спасибо, попробуем
Mikhail [azalio]
Documentation is available here.
http://romana.readthedocs.io/en/latest/ - правильный линк
Andrey
спасибо, попробуем
Т.е. у вас воркеры разные по доменам что ли?
Nikolay Markov
у нас несколько неймспейсов и нам надо трафик балансировать по ним в зависимости от пути в урле
Nikolay Markov
внутри неймспейса ингресс, вроде как, умеет, а вот на несколько его, как я понял, не очень рекомендуют
Andrey
Он совсем не умеет на несколько.
Andrey
Это бы лучше в один namespace, конечно. Какие бонусы вы получаете от разных?
Nikolay Markov
а что использовать в таком случае лучше?
Nikolay Markov
Это бы лучше в один namespace, конечно. Какие бонусы вы получаете от разных?
надо разным юзерам ресурсы ограничивать по-разному
Andrey
Окей, я понял, используете квоты.
Nikolay Markov
да
Andrey
Если нужно динамически менять ингрессы в разных неймспейсах, то напишите просто клиент в API Kubernetes, который будет менять пути в этих Ingress ресурсах, чтобы можно было указывать на разные сервисы и поды, соответственно.
Andrey
На каком языке программируете?
Nikolay Markov
основная логика пока на питоне, но на го тоже можем
Nikolay Markov
но что именно будет балансировать на разные неймспейсы? ставить отдельно руками nginx/haproxy вне кластера?
Andrey
Балансировка ведь в пределах одного namespace? Т.е. один URL (domain + path) ведёт в один сервис в каком-то конкретном namespace, верно?
Nikolay Markov
Балансировка ведь в пределах одного namespace? Т.е. один URL (domain + path) ведёт в один сервис в каком-то конкретном namespace, верно?
есть один урл, допустим, example.com . Может быть так, что example.com/abc ведет на один сервис в одном неймспейсе, а example.com/def - на другой в другом. Нужен ресурс, где можно прописывать роутинг в таком виде
Andrey
Так без проблем же это стандартным Ingress ресурсом делается.
Nikolay Markov
я, вроде как, понимаю, что можно настроить внешний nginx и разложить все по ингрессам, но хочется встроенными средствами и динамически
Andrey
Встроенно всё и настраивается. Просто, чтобы не словить геморроя от большого количества ingress'ов с кучей правил, можно с API напрямую поработать.
Denis
Полетели!
Denis
Регистрация в самом разгаре
Nikolay Markov
Встроенно всё и настраивается. Просто, чтобы не словить геморроя от большого количества ingress'ов с кучей правил, можно с API напрямую поработать.
перефразирую вопрос. Какой ресурс, не привязанный к конкретному неймспейсу, поможет раскидать трафик по разным ингрессам в разных неймспейсах?