k8s admin 用户生成token

k8s 版本 1.28

创建一个admin的命名空间

admin-namespce.yaml

复制代码
kind: Namespace
apiVersion: v1
metadata:   
  name: admin   
  labels:     
    name: admin

部署进k8s kubectl apply -f admin-namespce.yaml

查看k8s namespace 的列表

复制代码
kubectl get namespace

查看当前生效的token 创建一个jenkins用户 用户类型为 ClusterRoleBinding 此类型为授权给整个集群 命名空间在kube-system

role-jenkins.yaml

复制代码
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: jenkins
  annotations:
    rbac.authorization.kubernetes.io/autoupdate: "true"
roleRef:
  kind: ClusterRole
  name: cluster-jenkins
  apiGroup: rbac.authorization.k8s.io
subjects:
- kind: ServiceAccount
  name: jenkins
  namespace: kube-system
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: jenkins
  namespace: kube-system
  labels:
    kubernetes.io/cluster-service: "true"
    addonmanager.kubernetes.io/mode: Reconcile
---
apiVersion: v1
kind: Secret
metadata:
  name: jenkins
  namespace: kube-system
  annotations:
    kubernetes.io/service-account.name: "jenkins"
type: kubernetes.io/service-account-token

文件的最后一行为用户增加token 生成

部署用户 用户名为jenkins 授权整个集群

复制代码
kubectl apply -f role-jenkins.yaml

获取集群目前已有的token 值 secret

复制代码
[root@k-master token]# kubectl -n kube-system get secrets
NAME                     TYPE                                  DATA   AGE
bootstrap-token-qsesda   bootstrap.kubernetes.io/token         5      45h
jenkins                  kubernetes.io/service-account-token   3      24h

获取到jenkins 用户的token值的详细信息

kubectl -n kube-system describe secrets jenkins

获取jenkins 用户的token

复制代码
kubectl -n kube-system get secrets jenkins -o go-template --template '{{index .data "token"}}' | base64 --decode

查看k8s 下 jenkins用户是否有token

复制代码
# kubectl describe sa jenkins -n kube-system


Name:                jenkins
Namespace:           kube-system
Labels:              addonmanager.kubernetes.io/mode=Reconcile
                     kubernetes.io/cluster-service=true
Annotations:         <none>
Image pull secrets:  <none>
Mountable secrets:   <none>
Tokens:              jenkins
Events:              <none>
相关推荐
wuminyu3 分钟前
Java锁膨胀机制之偏向锁到轻量级锁源码剖析
java·linux·c语言·jvm·c++
yyoc978 分钟前
本地 Flink on K8s + Iceberg + MinIO 实时数仓平台 — AI部署指南与踩坑实录
大数据·ai·flink·kubernetes·iceberg
r-t-H8 分钟前
Docker进阶与容器编排实践-第二章
运维·docker·容器·dockerfile·docker compose·docker网络
码不停蹄的玄黓9 分钟前
SpringBoot 实现拦截器
java·spring boot·后端
狗凯之家源码网13 分钟前
永夜大圣 H5 棋牌大厅源码效果实测与品质解析
java·开发语言
凡人叶枫14 分钟前
Effective C++ 条款13:以对象管理资源(RAII)
java·linux·开发语言·c++·嵌入式开发
小马爱打代码14 分钟前
Java开发:Spring Cloud Alibaba微服务之消息队列(RocketMQ、Kafka、RabbitMQ)
java·java-rocketmq·java-rabbitmq
callJJ17 分钟前
Java 线程池使用指南:基于 Spring Boot 3.x + JDK 17 的入门与实践
java·开发语言·spring boot·线程池·多线程编程
Elias不吃糖19 分钟前
RabbitMQ vs Kafka 简单总结
java·分布式·kafka·rabbitmq
ch.ju19 分钟前
Java Programming Chapter 4——Error in compilation: it cannot be overwritten.
java·开发语言