今天继续给大家介绍Linux运维相关知识,本文主要内容是Kubernetes ClusterRole创建和Rolebinding。
一、Kubernetes ClusterRole创建
在上文Kubernetes详解(五十四)——Kubernetes ClusterRole创建和ClusterRolebinding中,我们已经创建了一个ClusterRole,今天我们还是使用该ClusterRole,来进行Rolebinding绑定用户和ClusterRole的实战。
我们的ClusterRole配置如下所示:
其上述配置原理和创建过程在这里就不过多赘述了,对上述过程还存在疑惑的可以查询该文章。
二、Kubernetes Rolebinding
接下来,我们来创建Rolebinding。如果采用命令行的创建方式,那么我们需要执行命令:
kubectl create rolebinding rolebind-clusterrole --clusterrole cluster-reader --user pzz
在上述命令中,我们创建了一个名为rolebind-clusterrole的Rolebinding,并通过–clusterrole参数指定绑定的ClusterRole,通过–user指定了绑定的用户。
与该命令相等同的Rolebinding资源清单如下所示:
apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
name: rolebind-clusterrole
roleRef:
apiGroup: rbac.authorization.k8s.io
kind: ClusterRole
name: cluster-reader
subjects:
- apiGroup: rbac.authorization.k8s.io
kind: User
name: pzz
配置完成后如下所示:
在资源清单配置完成后,我们可以执行命令:
kubectl apply -f rolebinding2.yaml
来创建该Rolebinding,该命令执行结果如下所示:
创建完成后,我们可以查看我们刚刚创建的Rolebinding,结果如下所示:
三、效果展示
之后,我们还是将当前的Kubernetes用户切换到pzz,之后我们来尝试在本名称空间和其他的名称空间查看Pod资源,结果如下所示:
从上图中可以看出,我们具有查看本地名称空间的权限,但是没有查看其他名称空间的权限,因此,我们的Kubernetes Rolebinding绑定ClusterRole成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200