Vadim
а именно а) группу с юзерами, б) rolebinding к группе
Aleksey
с б) понятно. с а) нет
Aleksey
группа с юзерами она где? у меня есть не полный доступ к инфре. и iam для меня по большей части недоступен.
Aleksey
в управлении юзерами по сертам я так понял что в OU кладут группу. в работе с oids некоторые отдают группу.
Aleksey
https://github.com/GoogleCloudPlatform/gke-rbac-demo тут вот тоже ни буквы про это
Aleksey
тут вот они описывают https://kubernetes.io/docs/reference/access-authn-authz/rbac/#role-binding-examples что есть kind: Group но откуда он берется мне не понятно
Andrey
собственно, вот https://cloud.google.com/kubernetes-engine/docs/how-to/role-based-access-control
Andrey
Vadim
группа с юзерами она где? у меня есть не полный доступ к инфре. и iam для меня по большей части недоступен.
>и iam для меня по большей части недоступен вот там в GKE они и прописываются
Andrey
IAM в GKE только для доступа на уровне проекта используется
Andrey
используйте роли вместо групп
Aleksey
вот про серивс аккаунты я читал да. и видел эту ссылку.
Aleksey
"использовать роли вместо групп" я не понимаю эту реккомендацию
Vadim
каждому юзеру придется роль назначать отдельно, а не сразу на всю группу
Aleksey
вот о том и речь.
Aleksey
в роли ведь лписывается доступ.
Aleksey
обычно per namespace но тут видимо per user?
Aleksey
дак это получается лечение хуже болезни..
Andrey
"роли вместо групп" - это значит сделать более общие роли, которые заменят группы. и вместо маппинга пользователь -> группа -> куча ролей, использовать маппинг пользователь -> обобщённая роль
Aleksey
я собственно группами хотел уйти от того что в чужом неймспейсе надо было одной команде дать доступ к этому неймспейсу. хотел описать что вот этим парням тоже можно чото делать.
Aleksey
обобщенная роль это как ? сейчас у меня рольбиндинги на неймспейс. в рольбиндинге юзеры.
Andrey
ну вот вы собирались включать в группу какие-то роли, так?
Aleksey
нет в группу я хотел включать юзеров
Andrey
я про ролебиндинг группы
Andrey
вы к группе собирались много ролей прибить через биндинги
Aleksey
нет
Andrey
одну роль только?
Aleksey
мне в рольбиндинге вместо subject User нужно было subject Group и всё
Andrey
тогда я не понимаю, зачем вам это всё
Andrey
назначайте просто роль на пользователей
Andrey
это эффективно будет равно включению в группу
Aleksey
что бы управлять пользователями в одном месте а не в каждом RoleBinding
Aleksey
ибо ролей много и рольбиндингов много
Andrey
а, так ролей таки много
Aleksey
каждого юзера прописывать в каждой рольбиндинге умотаешься
Andrey
то есть одна группа у вас предполагалась в нескольких ролебиндингах?
Aleksey
каждой команде по неймспейсу, роли и рольбиндингу. команде dba во все неймспейсы с правами команды
Andrey
ну то есть команда = группа = роль
Andrey
тогда я не понимаю чем "каждого юзера прописывать в каждой рольбиндинге умотаешься" отличается от "каждого юзера прописывать в каждой группе умотаешься" если у вас соответствие один к одному
Andrey
одна группа - одна роль
Andrey
если б группе соответствовало много ролей - тогда да. Я для этого и предлагал обобщённую роль использовать.
Aleksey
короче я понял. моё решение допслой темплейтинга
Aleksey
всем спасибо.
Vladimir
Подскажите плз Имеется вот такой набор переменных volumes:. - name: cert aa: bb hostPath: path: /opt/qa/docker-data/cert - name: images hostPath: path: /opt/qa/docker-data/images как бы в шаблон получить name? Хочется что то типа {{- with .Values.volumes }} name: {{ .name }} {{- end }} но оно ругается at <.name>: can't evaluate field name in type []interface {}
Vladimir
это helm если что
Andrey
с дебагом смотри какие переменные передаются
Vladimir
так не пойдет, там мап мне подсказали решение {{- range $pv := .Values.persistentVolume }} - name: {{ $pv.name | quote }}
Andrey
кстати да, у тебя же . получается массивом. Поэтому и ошибка при попытке найти поле name
Andrey
Там не map, а slice.
A
Всем привет! Один из подов ругается: configmaps "my-config" is forbidden: User "system:serviceaccount:default:default" cannot get resource "configmaps" in API group "" in the namespace "default". Как я могу пофиксить это?
Grisha
я могу только направить, тебе надо в RBAC
A
Это я понял уже, но что конкретно? Роль, кластерроль, ролебиндинг и тд
Vadim
все три варианта, в зависимости от того что понадобится потом - только одна конфигмапа, несколько юзеров с таким пермишшеном или мапы во всех проектах
Vadim
Сервис аккаунт тоже нужен?
serviceaccount == юзер в данном случае
A
system:serviceaccount:default:default это имя сервис аккаунта?
Vladimir
юзер default в СА default
A
Если он есть, то почему у меня такие траблы?
A
Значит получается что мне надо будет забиндить этого юзера с ролью, так?
Stas
короче я понял. моё решение допслой темплейтинга
чет много всего тут написали. У меня с группами работало так, берешь группу гугловую, добавляешь в IAM с любой минимально возможной ролью, делаешь ролбиндинги на эту группу в рбаке. Где проблема в имплементации этого?
Vadim
>iam для меня по большей части недоступен
Stas
но можно же попросить добавить группы, а сам состав людей в группе управлчется не иамом
Vadim
костылями как-то привычней :)
Stas
Anonymous
Можете подсказать - начал читать про ingress + cert-manager и не совсем понял - какую концепция предлагается: kubespray поставил мне ingress в отдельный namespace Теперь мне как нужно: Ingress: * создавать для каждого namespace отдельный ingress * или единого ingress будет достаточно ? Cert-manager / Certificate: * Создавать для каждого домена отдельный cetrificate или создавать единый TLS-сертификат на namespace ? Заранее спасибо.
Oleksii
Ingress общий, cert-manager cluster issuer
Oleksii
И будет общее все, потом серт выписывать в нужном неймспейсе
Anonymous
спасибо!
Antlar
отличный стикерпак, схоронил
Pavel
Мужики, подскажите, развернул metrics-server в kube-system, у меня есть serviceaccount в другом namespace, с правами только на этот namespace, так вот возникает проблема при деплое: Error: UPGRADE FAILED: Could not get information about the resource: horizontalpodautoscalers.autoscaling is forbidden: User "system:serviceaccount::tiller" cannot get horizontalpodautoscalers.autoscaling in the namespace "" Какие права нужно дать то? Не получается
Vitalii
Господа. Есть два контейнера nginx + php-fpm. Связывать через socket vs 9000 port? Поделитесь опытом.
Mentat
Господа. Есть два контейнера nginx + php-fpm. Связывать через socket vs 9000 port? Поделитесь опытом.
Контейнеры стандартно связываются только портами, это типа best practice.
Vitalii
Контейнеры стандартно связываются только портами, это типа best practice.
я подозревал 🙂 а есть где-то ссылка на почитать про это?) а то мне коллегам надо будет предоставить пруф)
Andrey
shared volume тоже практика приемлемая, так-то