KubernetesClientException:ClusterRole或角色

时间:2019-03-21 10:54:29

标签: kubernetes rbac openshift-enterprise spring-cloud-kubernetes

在使用Spring Cloud Kubernetes Discovery Client部署服务时,我得到KubernetesClientException,指出禁止用户“默认”访问容器。

我已经按照指定的here

添加了角色和角色绑定

该指南指出ClusterRole是必需的。但这不是我的选择,因为我们与其他部门共享集群。我只希望角色影响我们的项目/名称空间。

是否需要ClusterRole或角色足够?

1 个答案:

答案 0 :(得分:0)

  

要允许服务帐户访问这些帐户,需要创建一个具有必要权限的角色并将其分配给该帐户。这是通过群集角色或一个角色(如果只希望在其中加入角色)完成的   一个名称空间,以及一个角色绑定(特定于名称空间)。

它说您可以使用Role或ClusterRole。

在创建角色时请记住,应该定义命名空间。即

kind: Role
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  namespace: mynamespace
  name: service-discovery-client
rules:
- apiGroups: [""] # "" indicates the core API group
  resources: ["services", "pods", "configmaps", "endpoints"]
  verbs: ["get", "watch", "list"]