Kubernetes详解(五十三)——Kubernetes Role创建和Rolebinding

今天继续给大家介绍Linux运维相关知识,本文主要内容是Kubernetes Role创建和Rolebinding。

一、Kubernetes Role创建

首先,我们先来创建一个Role。我们可以通过两种方式来创建Role,一种是通过命令的方式创建,Role创建命令格式如下:

kubectl crate role 【Role名称】 --verb=【该Role所具有的权限】 --resources=【该Role所能控制的对象】

例如,执行命令:

kubectl crate role pods-reader --verb=get,list,watch --resources=pods

就可以创建一个名为pods-reader的Role,并且该Role拥有对Pod资源的查看权。
此外,我们还可以通过资源清单的方式来配置,与上文命令相同的资源清单配置如下:

apiVersion: rbac.authorization.k8s.io/v1
kind: Role
metadata:
  name: pod-reader
rules:
- apiGroups:
  - ""
  resources:
  - pods
  verbs:
  - get
  - list
  - watch

配置好的清单如下:
在这里插入图片描述
在上述清单中,我们使用了verbs来指定权限,使用resources来指定资源对象。之后,我们执行命令:

kubectl apply -f role.yaml

来执行该清单创建Role,该命令执行结果如下所示:
在这里插入图片描述
我们来查看当前的Role,结果如下:
在这里插入图片描述
在这里插入图片描述

二、Kubernetes Rolebinding

Kubernetes详解(五十一)——Kubernetes用户创建一文中,我们为Kubernetes集群创建了一个pzz的用户。接下来,我们创建一个Rolebinding,将该用户绑定我们刚刚创建的Role。
Rolebinding的创建也有两种方式,一种是通过命令的方式创建,另一种是通过资源清单的方式创建。
Kubernetes集群创建Rolebinding的命令格式如下:

kubectl create rolebinding 【Rolebinding名】 --role=【Role名】 --user=【用户名】

例如,我们执行命令:

kubectl create rolebinding bind-pod-reader --role=pods-reader --user=pzz

即可创建名为bind-pod-reader的Rolebinding,将pzz用户和pods-reader权限绑定在一起。
除此之外,我们还可以使用资源清单的方式创建该Role,与上述命令作用相同的资源清单如下:

apiVersion: rbac.authorization.k8s.io/v1
kind: RoleBinding
metadata:
  name: bind-pod-reader
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: Role
  name: pod-reader
subjects:
- apiGroup: rbac.authorization.k8s.io
  kind: User
  name: pzz

在上述配置中,我们使用了RoleRef来指定Role,使用了subjects来指定User。
配置完成后的资源清单文件如下:
在这里插入图片描述
在资源清单文件配置完成后,我们执行命令:

kubectl apply -f rolebinding.yaml

根据我们配置的资源清单创建Rolebinding,该命令执行结果如下所示:
在这里插入图片描述
之后,我们查看该Rolebinding,执行命令:

kubectl describe rolebinding bind-pod-reader

该命令执行结果如下所示:
在这里插入图片描述

三、效果展示

最后,我们用pzz用户登录,查看是否有相应的权限,执行命令:

kubectl config use-context pzz@kubernetes

可以将当前用户切换到pzz,之后,我们尝试查看default的Pods和kube-system的Pods,结果如下所示:
在这里插入图片描述
从上图可以看出,我们的pzz用户已经具有了对namespace名称空间内的Pod的访问权限,但是没有对kube-system名称空间的权限,我们的Rolebinding绑定Role和用户实战成功!
原创不易,转载请说明出处:https://blog.csdn.net/weixin_40228200

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

永远是少年啊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值