关于 ServiceAccounts 及其 Secrets 的重大变化

kubernetes v1.24.0 更新之后进行创建 ServiceAccount 不会自动生成 Secret 需要对其手动创建

创建 ServiceAccount

  1. cat<<EOF | kubectl apply --
  2. apiVersion: v1
  3. kind: ServiceAccount
  4. metadata:
  5.   name: cby
  6.   namespace: default
  7. EOF

查看 ServiceAccount

  1. root@cby:~# kubectl get serviceaccounts cby
  2. NAME                     SECRETS   AGE
  3. cby                      0         9s

查看 ServiceAccount 详细详细,没有对 Token 进行创建

  1. root@cby:~# kubectl describe serviceaccounts cby
  2. Name:                cby
  3. Namespace:           default
  4. Labels:              <none>
  5. Annotations:         <none>
  6. Image pull secrets:  <none>
  7. Mountable secrets:   <none>
  8. Tokens:              <none>
  9. Events:              <none>
  10. root@cby:~# 
  11. root@cby:~# kubectl get secrets
  12. No resources found in default namespace.
  13. root@cby:~#

创建 Secret 资源并与 ServiceAccount 关联

  1. cat<<EOF | kubectl apply --
  2. apiVersion: v1
  3. kind: Secret
  4. type: kubernetes.io/service-account-token
  5. metadata:
  6.   name: cby
  7.   annotations:
  8.     kubernetes.io/service-account.name: "cby"
  9. EOF

再次查看 ServiceAccount 已对 Secret 关联

  1. root@cby:~# kubectl describe serviceaccounts cby
  2. Name:                cby
  3. Namespace:           default
  4. Labels:              <none>
  5. Annotations:         <none>
  6. Image pull secrets:  <none>
  7. Mountable secrets:   <none>
  8. Tokens:              cby
  9. Events:              <none>
  10. root@cby:~#

查看 Secret 详细详细

  1. root@cby:~# kubectl get secrets cby 
  2. NAME   TYPE                                  DATA   AGE
  3. cby    kubernetes.io/service-account-token   3      35s
  4. root@cby:~# 
  5. root@cby:~# kubectl describe secrets cby 
  6. Name:         cby
  7. Namespace:    default
  8. Labels:       <none>
  9. Annotations:  kubernetes.io/service-account.name: cby
  10.               kubernetes.io/service-account.uid: c6629b84-1c08-483d-9a12-c2930ac0a2fe
  11. Type:  kubernetes.io/service-account-token
  12. Data
  13. ====
  14. ca.crt:     1363 bytes
  15. namespace:  7 bytes
  16. token:      eyJhbGciOiJSUzI1NiIsImtpZCI6IjRwMk02VU9leXU3N3lraUN6UVQ4R3I3Smw3eFhYdEVMX1Z2aTFjU2luSVEifQ.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJkZWZhdWx0Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZWNyZXQubmFtZSI6ImNieSIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VydmljZS1hY2NvdW50Lm5hbWUiOiJjYnkiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC51aWQiOiJjNjYyOWI4NC0xYzA4LTQ4M2QtOWExMi1jMjkzMGFjMGEyZmUiLCJzdWIiOiJzeXN0ZW06c2VydmljZWFjY291bnQ6ZGVmYXVsdDpjYnkifQ.r0nHVPO-QY-1p0fwKx0p0AfkiCGpTZ8vGzE8ioDtih5cAP1ew3ABnrj01EqeIEn8vhz29i0NHtZfh5XtYttqjU6o_b1IGFtkW5uIwlxYX2gtmm9njsL2NM7YM6lM0BDfQXvYrpKUuWLQUR-8i79h-GH9WFydmEwnthdxit7uSMJIZuyZP0X0ebxWUg1GGHsqNPy514zXEyvTZh8vs4fVl5ROJbKzFuSuQ1TntXMDncHSf8DSJ7iHUZ0pD757ysHvFKH9l6IbGrt8GUvxWxjMvnNjclLozKgfLXQEOVei39VrPU5DtsPp9DU8C04Gn4TWFW_WsyEWM14lGsQEGD-2QA
  17. root@cby:~#

删除 ServiceAccount 随之 Secret 一并自动删除

  1. root@cby:~# kubectl delete serviceaccounts cby 
  2. serviceaccount "cby" deleted
  3. root@cby:~#
  4. root@cby:~# kubectl get serviceaccounts
  5. root@cby:~# kubectl get secret

https://www.oiox.cn/
https://www.chenby.cn/
https://cby-chen.github.io/
https://blog.csdn.net/qq_33921750
https://my.oschina.net/u/3981543
https://www.zhihu.com/people/chen-bu-yun-2
https://segmentfault.com/u/hppyvyv6/articles
https://juejin.cn/user/3315782802482007
https://cloud.tencent.com/developer/column/93230
https://www.jianshu.com/u/0f894314ae2c
https://www.toutiao.com/c/user/token/MS4wLjABAAAAeqOrhjsoRZSj7iBJbjLJyMwYT5D0mLOgCoo4pEmpr4A/
CSDN、GitHub、知乎、开源中国、思否、掘金、简书、腾讯云、今日头条、个人博客、全网可搜《小陈运维》
文章主要发布于微信公众号:《Linux运维交流社区》

ServiceAccounts 及 Secrets 重大变化的更多相关文章

  1. 这些用来审计 Kubernetes RBAC 策略的方法你都见过吗?

    原文链接:这些用来审计 Kubernetes RBAC 策略的方法你都见过吗? 认证与授权对任何安全系统来说都至关重要,Kubernetes 也不例外.即使我们不是安全工作人员,也需要了解我们的 Ku ...

  2. kubernetes secret 和 serviceaccount删除

    背景 今天通过配置创建了一个serviceaccounts和secret,后面由于某种原因想再次创建发现已存在一个serviceaccounts和rolebindings.rbac.authoriza ...

  3. kubernetes 身份与权限认证 (ServiceAccount && RBAC)

    Kubernetes中提供了良好的多租户认证管理机制,如RBAC.ServiceAccount还有各种Policy等.   ServiceAccount Service Account为Pod中的进程 ...

  4. Service Account和其secrets 作用和场景,看了不亏。。

    Service Account概念的引入是基于这样的使用场景: 运行在pod里的进程需要调用Kubernetes API以及非Kubernetes API的其它服务.Service Account它并 ...

  5. ASP.NET Core 优雅的在开发环境保存机密(User Secrets)

    前言 在应用程序开发的过程中,有的时候需要在代码中保存一些机密的信息,比如加密密钥,字符串,或者是用户名密码等.通常的做法是保存到一个配置文件中,在以前我们会把他保存到web.config中,但是在A ...

  6. Secrets

    https://www.youtube.com/watch?v=qHm9MG9xw1o I need another storySomething to get off my chestMy life ...

  7. dig out secrets beneath AirSig

    My sister installed AirSig last week. She is so exciting about this new techknology and she won't st ...

  8. 《Secrets of the JavaScript Ninja》:JavaScript 之运行时代码

    最近,在阅读 jQuery 之父 John Resig 力作:Secrets of the JavaScript Ninja(JavaScript忍者秘籍).关于第九章提及的 JavaScript 之 ...

  9. CodeForces 173B Chamber of Secrets spfa

    Chamber of Secrets 题目连接: http://codeforces.com/problemset/problem/173/B Description "The Chambe ...

  10. .NET Core程序中使用User Secrets存储敏感数据

    前言 在开发中经常会用到一些敏感数据,比如AppSecret或数据库连接字符串,无论是硬编码还是写在配置文件中,最终都要push到svn或git上.对于开源项目,这些敏感数据就无隐私可言了,对于私有项 ...

随机推荐

  1. Python + Selenium + Microsoft Edge浏览器运行环境搭建及配置无界面模式

    介绍 在python中用selenium驱动Microsoft Edge(Chromium版)浏览器,并设置headless模式,也可以参考微软官方指导文档,更全更清晰 安装selenium 可以通过 ...

  2. android charles 抓不到https包,翻了2天资料总算是找到答案了

    问题, android7.0以上有权限限制,导致很多机子无法用Charles 抓ssl的包. 以下是我自己的坑请大家参考 原因一: 用Charles 工具上的地址去安装 chls.pro/ssl 原因 ...

  3. Python自学day03

    1.数据类型 int       1,2,3用于计算 bool    True,False用于判断 str       存储少量数据,用于操作 list       存储大量数据  [1,2,3,'a ...

  4. antv g6 中自定义tooltip 当有该属性时展示没有时不展示

    getContent(e) { const outDiv = document.createElement('div'); outDiv.style.width = '180px'; outDiv.i ...

  5. cv2安装

    pip install opencv-contrib-python

  6. Python第四章

    import datetime # 定义一个列表 mot = ["今天星期一:\n坚持下去不是因为我坚强,而是因为我别无选择.",        "今天星期二:\n含泪播 ...

  7. SQL Server触发器备份后还原

    测试环境SQL Server 2012 select a.definition , b.name,b.is_disabled from sys.sql_modules a inner join sys ...

  8. DB help

    using Dapper; using System; using System.Collections; using System.Collections.Generic; using System ...

  9. 2020/5/26-笔记:Oracle数据库表空间的管理

    1新建表空间 (1)普通(本地管理)表空间: create tablespace 表空间名 datafile'OS系统文件路径\文件名.dbf' size nM; 或 create tablespac ...

  10. Python命令提示符:不是内部或外部命令,也不是可运行的程序或批处理文件

    Python原装IDE(Integrated Development Environment)安装时,需要确认更新pip(什么是 pip ?pip 是 Python 中的标准库管理器.它允许你安装和管 ...