я получил

ько что создал новый кластер, используя Google Container Engine, работающий на Kubernetes 1.7.5, с включенными новыми разрешениями RBAC. У меня возникла проблема с распределением разрешений для некоторых из моих служб, что привело меня к следующему:

документы для использования механизма контейнеров с состоянием RBAC, что пользователю должна быть предоставлена ​​возможность создавать роли авторизации, выполнив следующую команду:

kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin [--user=<user-name>]

Однако это не удается из-за отсутствия разрешений (я бы предположил, что это те самые разрешения, которые мы пытаемся предоставить, выполнив приведенную выше команду).

Error from server (Forbidden): 
User "<user-name>" cannot create clusterrolebindings.rbac.authorization.k8s.io at the cluster scope.: 
  "Required \"container.clusterRoleBindings.create\" permission." 
  (post clusterrolebindings.rbac.authorization.k8s.io)

Любая помощь будет принята с благодарностью, так как это блокирует меня от создания разрешений, необходимых для моих служб кластера.

Ответы на вопрос(2)

gcloud тогда ваш пользователь - не самый мощный администратор, для которого вы пытаетесь создать привязку.

использованиеgcloud container clusters describe <clustername> --zone <zone> на кластере и искатьpassword поле.

После этого выполнитьkubectl --username=admin --password=FROMABOVE create clusterrolebinding ...

 ecem03 окт. 2017 г., 13:25
Мне также пришлось обновить kubectl до последней версии, до (v1.6) даже с этим решением я все еще получал то же сообщение об ошибке. Может быть, это помогает кому-то еще.
 Alan Cabrera13 дек. 2018 г., 16:34
я получилError: unknown flag: --username
Решение Вопроса

которые были созданы с паролем, но я бы рекомендовал по возможности избегать использования этого пароля (или создавать кластеры GKE без пароля).

Использование IAM: чтобы создать этоClusterRoleBindingвызывающий должен иметьcontainer.clusterRoleBindings.create разрешение. ТолькоOWNER а такжеKubernetes Engine Admin Роли IAM содержат это разрешение (поскольку оно позволяет изменять управление доступом в ваших кластерах GKE).

Итак, чтобы позволить[email protected] чтобы выполнить эту команду, им должна быть предоставлена ​​одна из этих ролей. Например.:

gcloud projects add-iam-policy-binding $PROJECT \
  --member=user:[email protected] \
  --role=roles/container.admin
 sigi11 янв. 2019 г., 15:09
GCP / GKE: мне также нужно было добавить ClusterRoleBinding внутри gke для моего пользователя, чтобы он заработал.
 Arnaud Tournier21 нояб. 2018 г., 14:36
Из моего опыта GCP, вам не только нужно это разрешение (container.clusterRoleBindings.create) но и этотcontainer.clusterRoles.bind, С этим вы можете создать свою собственную роль и не нужно использовать большиеKubernetes Engine Admin предопределенная роль. Документация здесь:cloud.google.com/kubernetes-engine/docs/reference/...

Ваш ответ на вопрос