k8s学习-CKS真题-RoleBinding

本文涉及的产品
容器服务 Serverless 版 ACK Serverless,317元额度 多规格
容器服务 Serverless 版 ACK Serverless,952元额度 多规格
简介: k8s学习-CKS真题-RoleBinding

对应b站视频:

题目

Context 
绑定到 Pod 的 ServiceAccount 的 Role 授予过度宽松的权限。完成以下项目以减少权限集。 
Task
1.一个名为 web-pod 的现有 Pod 已在 namespace db 中运行。 编辑绑定到 Pod 的 ServiceAccount service-account-web 的现有 Role,仅允许只对 pods 类型的资源执行 get 操作。 
2.在namespace db 中创建一个名为 role-2 ,并仅允许只对 statefulsets 类型的资源执行 delete 操作的新Role。 
3.创建一个名为 role-2-binding 的新 RoleBinding,将新创建的 Role 绑定到 Pod 的
ServiceAccount。 
注意:请勿删除现有的 RoleBinding。

环境搭建

命令

kubectl create ns db
kubectl create sa service-account-web -n db
kubectl create role pods-get --verb=create,delete,get --resource=deployments,statefulsets,daemonsets,pods -n db
kubectl create rolebinding pods-get-binding --role=pods-get --serviceaccount=db:service-account-web -n db

截图

生成web-pod.yaml,修改添加serviceAccountName到spec下面,之后创建。

命令

kubectl run web-pod --image=nginx --dry-run=client -n db -o yaml > web-pod.yaml
vim web-pod.yaml
kubectl create -f web-pod.yaml
serviceAccountName: service-account-web

截图

解题

任务一

查找service-account-web绑定的role

命令

kubectl get rolebinding -n db -o yaml | grep service-account-web -B 5

或者

kubectl get rolebinding -n db -o wide

截图

修改role权限

命令

kubectl edit role pods-get -n db

截图

任务二

命令

kubectl create role role-2 --resource=statefulsets --verb=delete -n db

截图

任务三

命令

kubectl create rolebinding role-2-binding --role=role-2 --serviceaccount=db:service-account-web -n db

截图

参考

k8s学习-CKA真题-基于角色的访问控制-RBAC

k8s学习-基于角色的权限控制RBAC(概念,模版,创建,删除等)

k8s-Rolebinding

本专栏:k8s学习-CKS考试必过宝典

更多k8s相关内容,请看文章:k8s学习-思维导图与学习笔记

相关实践学习
通过Ingress进行灰度发布
本场景您将运行一个简单的应用,部署一个新的应用用于新的发布,并通过Ingress能力实现灰度发布。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
1月前
|
存储 Kubernetes 持续交付
k8s学习
【10月更文挑战第1天】
82 4
|
1月前
|
Kubernetes 应用服务中间件 nginx
k8s学习--YAML资源清单文件托管服务nginx
k8s学习--YAML资源清单文件托管服务nginx
k8s学习--YAML资源清单文件托管服务nginx
|
1月前
|
Kubernetes 监控 测试技术
k8s学习--基于Ingress-nginx实现灰度发布系统
k8s学习--基于Ingress-nginx实现灰度发布系统
100 2
k8s学习--基于Ingress-nginx实现灰度发布系统
|
1月前
|
存储 Kubernetes 调度
|
1月前
|
Kubernetes API 调度
k8s学习--pod的所有状态详解(图例展示)
k8s学习--pod的所有状态详解(图例展示)
136 1
|
1月前
|
Kubernetes JavaScript 前端开发
k8s学习--chart包开发(创建chart包)
k8s学习--chart包开发(创建chart包)
|
1月前
|
Kubernetes 固态存储 调度
k8s学习--如何控制pod调度的位置
k8s学习--如何控制pod调度的位置
|
1月前
|
存储 Kubernetes 调度
k8s学习--k8s群集部署zookeeper应用及详细解释
k8s学习--k8s群集部署zookeeper应用及详细解释
|
1月前
|
Kubernetes 监控 测试技术
k8s学习--OpenKruise详细解释以及原地升级及全链路灰度发布方案
k8s学习--OpenKruise详细解释以及原地升级及全链路灰度发布方案
|
1月前
|
Kubernetes 关系型数据库 MySQL
k8s学习--利用helm部署应用mysql,加深helm的理解
k8s学习--利用helm部署应用mysql,加深helm的理解
173 0