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. Java BasePooledObjectFactory 对象池化技术

    Java GenericObjectPool 对象池化技术--SpringBoot sftp 连接池工具类 一个对象池包含一组已经初始化过且可以使用的对象,而可以在有需求时创建和销毁对象.池的用户可以 ...

  2. Django笔记十三之select_for_update等选择和更新等相关操作

    本篇笔记将介绍 update 和 create 的一些其他用法,目录如下: get_or_create update_or_create select_for_update bulk_create b ...

  3. 如何快速在Ubuntu上搭建python环境?

    如何快速在Ubuntu上搭建python环境? 一.准备好python源码包 使用curl命令获取python源码包的过程很缓慢且容易失败,因此提前去官网下载好后放在本地是最好的办法. 二.启动镜像并 ...

  4. 2.自定义@Excel注解实现数据Excel形式导入导出

    前言 这几天在学习如何使用自定义注解实现Excel格式数据导入导出,参考的还是若依框架里面的代码,由于是初学,所以照猫画虎呗,但是难受的是需要复制并根据自己项目修改作者自定义的工具类以及导入这些工具类 ...

  5. el-menu使用递归组件实现多级菜单组件

    1. 效果: 2. 实现: 创建外层菜单AsideMenu.vue组件和子菜单项AsideSubMenu.vue组件,在AsideSubMenu中进行递归操作. AsideMenu.vue文件内容如下 ...

  6. LeetCode SQL 基础题

    链接: 力扣 个人做法: # Write your MySQL query statement below SELECT A.name Employee FROM Employee A,Employe ...

  7. VUEX(状态管理)之憨憨篇

    1.导入vuex包 import vuex from 'vuex' 2.注册vuex到vue中 vue.use(vuex) 3.new vuex.store() 得到一个数据存储对象 var stor ...

  8. 《爆肝整理》保姆级系列教程-玩转Charles抓包神器教程(16)-Charles其他骚操作之大结局

    1.简介 今天就说一些Charles的其他操作.以及抓包跨域的问题和常见的问题如何解决.到此Charles这一系列的文章也要和大家说再见了,其他什么小程序.Android7.0等等的问题可以查看宏哥的 ...

  9. Prism Sample 5 View Injection

    这里稍微复杂了点,定义视图A的过程是一样的: <UserControl x:Class="ViewInjection.Views.ViewA" xmlns="htt ...

  10. 【Docker】网络管理

    一.容器默认网络通信 Usage: dockerd [OPTIONS] Options: --icc Enable inter-container communication (default tru ...