Context

您组织的安全策略包括:

  • ServiceAccount 不得自动挂载 API 凭据
  • ServiceAccount 名称必须以 "-sa" 结尾

清单文件 /cks/sa/pod1.yaml 中指定的 Pod 由于 ServiceAccount 指定错误而无法调度。

请完成以下项目:

Task

  1. 在现有 namespace qa 中创建一个名为 kackend-sa 的新 ServiceAccount,

确保此 ServiceAccount 不自动挂载 API 凭据。

  1. 使用 /cks/sa/pod1.yaml 中的清单文件来创建一个Pod。
  2. 最后,清理 namespace qa 中任何未使用的 ServiceAccount。

参考资料

https://kubernetes.io/zh-cn/docs/tasks/configure-pod-container/configure-service-account/

答题

先切换集群

kubectl config use-context KSCH00301
  1. 创建 ServiceAccount
vi qa-ns.yaml

根据官网修改如下内容

apiVersion: v1

kind: ServiceAccount

metadata:

name: backend-sa # 修改name

namespace: qa # 注意添加 namespace

automountServiceAccountToken: false # 修改为 false, 表示不自动关注 secret

kubectl apply -f qa-ns.yaml

kubectl get sa -n qa

  1. 创建 Pod 使用该 ServiceAccount
vi /cka/sa/pod1.yaml

修改如下内容

metadata:

name: backend

namespace: qa # 注意命名空间是否对

spec:

serviceAccountName: backend-sa # 没有则添加一行,有则修改(考试时有,修改即可)

containers:

......
kubectl apply -f /cka/sa/pod1.yaml

kubectl get pod -n qa

  1. 删除没有使用的 ServiceAccount
查看qa命名空间下的所有sa

kubect get sa -n qa

查看qa命名空间下已经在用的sa

kubectl get pod -n qa -o yaml | grep -i serviceAccountName

删除qa命名空间下不用的sa

kubect delete sa test01 -n qa

CKS 考试题整理 (08)-Pod指定ServiceAccount的更多相关文章

  1. pod指定node运行

    1.给node打上label kubectl label nodes cn-hongkong.i-j6c5pm0b59y9kaos565o apptype=monitoring 2.查看结果kubec ...

  2. 【web前端面试题整理08】说说最近几次面试(水)

    为什么换工作 换工作简单来讲一般会归纳为钱不够或者人不对,我们团队氛围很不错,所以基本就定位到钱不够了,而我更多是考虑到以后的职业发展,简单说来就是对以后几年的工作有想法,而这种想法实现不一定能在现在 ...

  3. linux基础:第三关课前考试题整理

    1.如何取得/etc/hosts 文件的权限对应的数字内容,如-rw-r--r-- 为 644, 要求使用命令取得644 这样的数字. [root@server ~]# stat /etc/hosts ...

  4. iOS开发中的错误整理,pod文件Install失败

    一.之前用黑苹果,编辑pod文件用一下格式 platform :ios, "8.0" pod "MJExtension" pod "MJRefresh ...

  5. Kubernetes-深入分析集群安全机制

    Kubernetes过一系列机制来实现集群的安全机制,包括API Server的认证授权.准入控制机制及保护敏感信息的Secret机制等.集群的安全性必须考虑以下的几个目标: 保证容器与其所在宿主机的 ...

  6. Kubernetes之POD

    什么是Pod Pod是可以创建和管理Kubernetes计算的最小可部署单元.一个Pod代表着集群中运行的一个进程. Pod就像是豌豆荚一样,它由一个或者多个容器组成(例如Docker容器),它们共享 ...

  7. Kubernetes中pod创建流程

    转自:https://blog.csdn.net/yan234280533/article/details/72567261 Pod是Kubernetes中最基本的部署调度单元,可以包含contain ...

  8. spring cloud kubernetes之serviceaccount permisson报错

    spring boot项目引用spring-cloud-starter-kubernetes <dependency> <groupId>org.springframework ...

  9. kubernetes-深入理解pod对象(七)

    Pod中如何管理多个容器 Pod中可以同时运行多个进程(作为容器运行)协同工作.同一个Pod中的容器会自动的分配到同一个 node 上.同一个Pod中的容器共享资源.网络环境和依赖,它们总是被同时调度 ...

  10. kubernetes高级之pod安全策略

    系列目录 什么是pod安全策略 pod安全策略是集群级别的用于控制pod安全相关选项的一种资源.PodSecurityPolicy定义了一系列pod相要进行在系统中必须满足的约束条件,以衣一些默认的约 ...

随机推荐

  1. vue中使用vue.extend在dom挂载vue实例

    const CounterComponent = Vue.extend(Counter); this.vm = new CounterComponent({}).$mount('#container' ...

  2. STM32F407 学习 (0) 各种外设功能 (中)

    十.高级定时器 1.重复计数器   如果我们设置重复计数器寄存器 RCR 的值为 N,那么更新事件将在定时器发生 N+1 次上溢或下溢时发生.重复计数器的特性,在控制生成 PWM 信号时很有用. 2. ...

  3. python之zipfile应用

    zipfile Python 中 zipfile 模块提供了对 zip 压缩文件的一系列操作. 1 f=zipfile.ZipFile("test.zip",mode=" ...

  4. QtDesigner安装

    QtDesigner简单介绍 Qtdesigner是Python设计里面一个非常实用的工具,使得人们编写qt界面可以不仅仅是使用纯代码,而可以在可视化的基础上设置,非常方便. QtDesigner安装 ...

  5. 解Bug之路-应用999线升高

    前言 监控指标诚然是发现问题于微末之时的极佳手段,但指标往往有其表达的极限.在很多情况下,单独看一个黄金指标并不能表征系统的健康程度,反而有可能被其迷惑,进而忽略相关问题.(本文所提及的Linux K ...

  6. Ubuntu系统Flameshot使用问题

    Ubuntu系统Flameshot使用问题 系统:Ubuntu22.04 问题:使用Flameshot,每次都会先截取整个屏幕,提示需要先分享,再使用Flameshot的功能 安装Flameshot ...

  7. DRF的认证组件(源码分析)

    DRF认证组件(源码分析) 1. 数据库建立用户表 在drf中也给我们提供了 认证组件 ,帮助我们快速实现认证相关的功能,例如: # models.py from django.db import m ...

  8. 容易忽视的细节:Log4j 配置导致的零点接口严重超时

    作者:vivo 互联网服务器团队- Jiang Ye 本文详细的记录了一次0点接口严重超时的问题排查经历.本文以作者自身视角极具代入感的描绘了从问题定位到具体的问题排查过程,并通过根因分析并最终解决问 ...

  9. 数据结构(DataStructure)-01

    数据结构-01 **数据结构与算法** **算法概述** **时间复杂度概述** **时间复杂度 - 计算规则** **数据结构概述** **抽象数据类型** **线性表 - 顺序表** **线性表 ...

  10. 打开conda环境报错:UnicodeDecodeError: ‘gbk‘ codec can‘t decode byte 0x9a in position 317: illegal multibyt

    解决打开conda环境报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0x9a in position 317: illegal multib ...