我试图使用一个ServiceAccount来授予一个Kubernetes集群管理角色:
apiVersion: v1
kind: ServiceAccount
metadata:
name: jenkins
namespace: jenkins
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
name: jenkins
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-admin
subjects:
- kind: ServiceAccount
name: jenkins
namespace: jenkins...and,我得到了这个错误:
The ClusterRoleBinding "jenkins" is invalid: roleRef: Invalid value: rbac.RoleRef{APIGroup:"rbac.authorization.k8s.io", Kind:"ClusterRole", Name:"cluster-admin"}:
cannot change roleRef我已经验证了ClusterRole确实存在:
kubectl get clusterrole
NAME AGE
admin 1d
alb-ingress-controller 1d
aws-node 1d
cluster-admin 1d我还尝试将其他集群角色附加到我的服务帐户,但一直无法这样做。
我假设这意味着您不能将群集角色附加到服务帐户,如果是这样的话,如何将群集级别的权限授予服务帐户?
发布于 2018-08-03 18:13:20
错误“无法更改roleRef”指的是我试图创建的ClusterRoleBinding已经存在。
通过运行kubectl get clusterrolebinding,我能够看到ClusterRoleBinding已经存在。
在运行kubectl delete clusterrolebinding/jenkins之后,我成功地执行了上面的YAML。
https://stackoverflow.com/questions/51677003
复制相似问题