使用背景:
k8s 集群资源"Node" 资源属于集群范围的资源,如果用户既想有 "Node" 资源的的获取,又想限制用户指定 NS 的开发权限,这个有什么推荐做法么?
操作步骤:
- 首先在控制台 【授权管理】 给子账户授权想要授予的权限,如开发人员。
- 由于部署工作负载需要集群“node”资源权限(否则控制台 cpu 规格处为灰色),所以需要给该子账户授予“node” 资源权限,具体操作如下:
(1)创建具有“node”权限的clusterRole 资源(一个集群只需创建一次,不用重复创建):
代码语言:yaml复制apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
labels:
custom-clusterrole: "true"
name: clusterrole-nodes-list
rules:
- apiGroups:
- ""
resources:
- nodes
verbs:
- get
- list
- watch
(2)给该子账户创建授权,在控制台继续【添加RBAC】权限,选择该子账户后下一步, 选择“所有命名空间”,再选择“自定义权限”, 选择步骤(1)的ClusterRole授权即可。