Евгений
Хотя чат с нуля людьми тоже такое :)
Andrey
@SinTeZoiD Согласовал с начальством выезд двоих человек, иду на сайт, а места закрыли. Блин, печально.
Andrey
Написал на почту. Надеюсь, что-то выгорит.
Andrey
Пни меня во вторник, если не ответят
Окей, спасибо, но хоть какие-то гарантии бы. Я набрал 3х человек (включая меня). А мне из Нижнего Новгорода надо ехать. Я люблю поезда, но надо чуть заранее знать. :)
Andrey
Тогда в понедельник)
Супер. Заранее спасибо.
Lex
привет, а по хелму в этот чатик писать или есть другой какой?
Lex
просто извращений хочу и ищу помощи знающих
Lex
ок, итого, есть задача. пишу helm chart для приложения состоящего из отдельных сервисов. каждый сервис принимает набор параметров, многии из которых общие для 2-х и более сервисов, нужно иметь возможность как задавать параметры глобально для всех сервисов так и переопределять их на уровне сервиса, возможно ли такое сделать в helm и если да, то как наиболее правильно?
Lex
шта?
Sergey
это шутка была
Sergey
Lex
ааа
Grigorii
вдруг кто знает это про GKE
Grigorii
не могу вдуплить чет где можно настроить tolerations для дефолтных приложений из kube-system типа kube-dns и metrics-server? в смысле декларативно где это делается
Grigorii
нуу например все сложить в ./templates и задавать в values.yaml переменные для всего какие-то переменные будут глобальные, какие-то для конкретного сервиса
Grigorii
наверное зависит от сложности приложения
Grigorii
Спасибо, а еще как?
с другой стороны, микросервисы на то и микросервисы, чтобы их можно было независимо деплоить, поэтому может пихать все в один чарт будет в конкретном случае плохой идеей но никто не запрещает в конце концов иметь несколько независимых чартов и для всех них отдельно лежащий values.yaml с глобальными переменными короче, много вариантов)
Grigorii
ну поэтому я и говорю что зависит от случая если удобно все одим чартом манаджить — пожалуйста
Lex
та Я понимаю, просто думал есть какое-то стандартное решение, типа — есть параметр для сервиса — берем его, нет — берем общий
Lex
но фиг там, это ж helm
Lex
даже через _helpers.tpl получается уродство лютое
Max
Ребят, а можно ли в кубе дополнить entrypoint? То есть сейчас такого вида: ["node"], а я хочу, например, не пересобирая самому docker image, сделать ["/sbin/tini", "--", "node"]?
Max
на месте node может быть что угодно, хочется универсально в любой image добавлять что-то перед дефолтным entrypoint'ом
Max
знаю что можно CMD изменить, но нужно конкретно entrypoint обернуть
Grigorii
даже через _helpers.tpl получается уродство лютое
ой да в хелме всегда будет уродство тут ниче не поделаешь
Grigorii
Ребят, а можно ли в кубе дополнить entrypoint? То есть сейчас такого вида: ["node"], а я хочу, например, не пересобирая самому docker image, сделать ["/sbin/tini", "--", "node"]?
из быстрого и извращенного на ум приходит делать inspect image в init контейнере и передавать найденный entrypoint в основной контейнер но может есть проще вариант)
Yaroslav
знаю что можно CMD изменить, но нужно конкретно entrypoint обернуть
Ох, не зря в кубике ентирпойнт и цмд заменили на command и args. Если только из этой логики оставить в манифесте args и поставлять entrypoint, но я не знаю, прокатит ли.
𝚔𝚟𝚊𝚙𝚜
Andrey
Ребят, а можно ли в кубе дополнить entrypoint? То есть сейчас такого вида: ["node"], а я хочу, например, не пересобирая самому docker image, сделать ["/sbin/tini", "--", "node"]?
сталкивался с такой задачей, нельзя так сделать, кроме как лютыми костылями типа docker inspect, как выше предлагают. Монтирование скрипта внутрь контейнера не сработает, потому как изнутри контейнера нельзя узнать метаинформацию о нём, типа дефолтного entrypoint.
No1
А сколько уже кубернетесу годочков?:)) Когда родился?
Ильдар
В продакшн рано.
Denis
Сыроват еще
Lex
да, можно такое, есть такая функция default
А как лучше отработать если оба параметра отсутвуют?
Andrey
ну две функции default использовать (default (default "значение по умолчанию" .Values.global.param1 ) .Values.service.param1)
Andrey
если global.param1 и service.param1 не заданы, то будет "значение по умолчанию"
Slach
всем привет. а вот кто как пользователей в кластере манагерит? LDAP?
Slach
ну
хм, ну вариантов то много насколько я понимаю DEX много источников позволяет делать а что в качестве LDAP сервера? OpenLDAP ? Active Directory? я как бы в начале пути, хочу понять какие где грабли есть
Terry
ldap, freeipa
𝚔𝚟𝚊𝚙𝚜
Ну или любой бэкенд (в том числе AD) + Keycloak
Pavel
Ну или любой бэкенд (в том числе AD) + Keycloak
Keycloak имеет какие-то явные преимущества над dex?
Slach
FreeIPA + Keycloak
а сам FreeIPA я так понимаю отдельный, у него какие то HA гарантии есть? Имеет смысл его пускать как Statefullset внутри k8s ? и централизованый управляется обычным provisioning?
𝚔𝚟𝚊𝚙𝚜
Keycloak имеет какие-то явные преимущества над dex?
Явных не имеет, он удобен и поддерживает realms, в каждом из которых можно хранить отдельную конфигурацию для авторизации приложений, каждому клиенту можно настраивать отдельные мапинги, ну и к тому же он легко скрещивается с FreeIPA или AD.
𝚔𝚟𝚊𝚙𝚜
С другой стороны DEX очень легкий и простой
𝚔𝚟𝚊𝚙𝚜
Я бы советовал использовать DEX если хочется настроить авторизацию через Gitlab/Github/Google и Keycloak если для LDAP
𝚔𝚟𝚊𝚙𝚜
а сам FreeIPA я так понимаю отдельный, у него какие то HA гарантии есть? Имеет смысл его пускать как Statefullset внутри k8s ? и централизованый управляется обычным provisioning?
На самом деле может вам и LDAP не нужен, если просто хотите манаджить юзеров в кластере, одного Keycloak вполне будет достаточно
Slach
На самом деле может вам и LDAP не нужен, если просто хотите манаджить юзеров в кластере, одного Keycloak вполне будет достаточно
нет. на самом деле хочется как то остановить в зародыше бардак на тему "ой бля у нас уже 100 AWS, 50 Google, 30 Github и еще хер-пойми сколько сервисов + системно через SSH на ноды в кластер тоже хочется ходить не просто так"
Slach
в общем хочется по большому =) как взрослые, но пока непонятно "как"
Rainbow
Пока говорите про keycloak, никогда такое не настраивал и тп, только смотрю. Я могу делать через него же auth proxy, который будет показывать форму авторизации и отдавать jwt дальше тем, кто под ним? В jwt хранить userId, permissions.
𝚔𝚟𝚊𝚙𝚜
Тогда берите FreeIPA - пихать в куб не советовал бы, лучше на отдельный сервер, можно два. Для авторизации в Linux, LDAP, управления SUDO и доступами к серверам - самое оно
𝚔𝚟𝚊𝚙𝚜
Keycloak можно без проблем развернуть уже в кубе, если хотите
Валентин
нет. на самом деле хочется как то остановить в зародыше бардак на тему "ой бля у нас уже 100 AWS, 50 Google, 30 Github и еще хер-пойми сколько сервисов + системно через SSH на ноды в кластер тоже хочется ходить не просто так"
Все, кроме "по ssh ходить" с любым ldap, какой в конторе есть, интегрируется (ну т.е если у вас там везде винда на десктопах - юзайте ad, а если половина или большк десктопов маки-линуксы - openldap или любую другую над ним надстройку). А вот ssh по ключам пихнуть в ldap сложновато, а ssh без ключей плох даже если и с ldap'ом
𝚔𝚟𝚊𝚙𝚜
Про Keycloak немного расскажу на своем докладе еще, 14 февраля
Rainbow
𝚔𝚟𝚊𝚙𝚜
При этом он простой как тапок, его работа прозрачна и keycloak в качестве backend'а ему не требуется. т.е. подойдет любой аутентификатор с поддержкой client-secret
Roman
Ну или любой бэкенд (в том числе AD) + Keycloak
а где можно найти вменяемый ман для интеграции кубика с АД?
Rainbow
При этом он простой как тапок, его работа прозрачна и keycloak в качестве backend'а ему не требуется. т.е. подойдет любой аутентификатор с поддержкой client-secret
А какие ещё есть коробочные аутентификаторы? Из не сложных (список пользователей, роли на которые свои permission вешаешь).
𝚔𝚟𝚊𝚙𝚜
А какие ещё есть коробочные аутентификаторы? Из не сложных (список пользователей, роли на которые свои permission вешаешь).
Как по мне, если тебе нужно что-то послоложнее DEX, то Keycloak - отличный вариант, вряд-ли что-то лучше найдешь.
Rainbow
можно ещё kong
который hq?
Andrey
ага
Rainbow
хотелось бы что-то с готовым ui, чтобы можно было кому-то ещё отдать для раздачи доступа. Уже устал пилить свои велосипеды. kong это прокси. там какие решения за ним для этого?
Slach
Тогда берите FreeIPA - пихать в куб не советовал бы, лучше на отдельный сервер, можно два. Для авторизации в Linux, LDAP, управления SUDO и доступами к серверам - самое оно
а какие у него гарантии по HA? ну допустим хочу три машины в разных ДЦ, как он переживет split brain? можно ли несколько IP для FreeIPA серверов указать, чтобы не городить всякое с BGP Anycast? если да, то как freeipa clients переживут если будут видеть все 3 ip, а при этом 1 freeipa-server тупо бдет выключен?