Администратор роли кластера Kubernetes не может получить статус развертывания - PullRequest
0 голосов
/ 10 ноября 2018

У меня есть следующая роль:

roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: admin

Когда я делаю kubectl proxy --port 8080, а затем попробуйте сделать

http://127.0.0.1:8080/apis/extensions/v1beta1/namespaces/cdp/deployments/{deploymentname}

Я получаю 200 и все работает нормально. Однако, когда я делаю:

http://127.0.0.1:8080/apis/extensions/v1beta1/namespaces/cdp/deployments/{deploymentname}/status

Я получаю запрет и возвращаю статус 403.

Я также могу делать get, create, list, watch в развертываниях с моей ролью admin.

Любая идея о том, почему /status выдала бы запрет, когда у меня явно есть все необходимые разрешения в качестве администратора для моего пространства имен.

Ответы [ 2 ]

0 голосов
/ 10 ноября 2018

Вы упомянули глаголы роли и не упомянули ресурсы и apiGroup. Убедитесь, что установлено следующее:

  - apiGroups:
    - apps
    - extensions
    resources:
    - deployments/status
0 голосов
/ 10 ноября 2018

подресурс состояния не дает вам больше информации, чем просто загрузка развертывания

Разрешения роли администратора не позволяют записывать состояние развертывания. Они позволяют создавать и удалять объекты развертывания, контролируя «специфицированную» часть объекта. Разрешения на изменение состояния предоставляются контроллеру развертывания.

...