k8s中 discovery-token和token 的区别

1. ‌用途与功能

  • ‌**token** ‌

    是 Kubernetes 集群中通用的身份验证凭证,用于 API 访问控制。它可以是用户 Token 或服务账户 Token,通过 kubeadm token list 查看,并用于 kubeadm join 加入节点时的认证‌。

    • 示例:kubeadm token create 生成的 Token 用于节点加入集群或 API 访问‌。
  • ‌**discovery-token** ‌

    kubeadm 初始化集群时生成的临时凭证,专门用于新节点通过 ‌Bootstrap Token ‌ 机制发现并加入集群。它包含 discovery-token-ca-cert-hash 字段,用于验证集群 CA 证书的合法性‌。

    • 示例:kubeadm init 返回的 discovery-token 用于 Worker 节点加入集群‌。

2. ‌生命周期与安全性

  • ‌**token**‌

    • 有效期较长(默认 24 小时),可通过 kubeadm token create --ttl 调整‌。
    • 支持动态更新,过期后需重新生成‌4。
  • ‌**discovery-token**‌

    • 通常为一次性使用,节点加入集群后即失效‌。
    • 需配合 --discovery-token-ca-cert-hash 使用,确保节点连接的是合法集群‌。

3. ‌使用场景

  • ‌**token**‌

    • 用于 API 访问(如 kubectl 操作)或服务账户认证‌。
    • 支持 RBAC 授权,可绑定具体权限‌。
  • ‌**discovery-token**‌

    • 仅用于节点加入集群的初始发现阶段,不涉及后续 API 访问‌。

4. ‌数据内容

  • ‌**token** ‌

    包含用户或服务账户的标识信息(如 JWT 格式的 Token)‌。

  • ‌**discovery-token** ‌

    包含集群 CA 证书的哈希值(discovery-token-ca-cert-hash),用于验证集群身份‌。

总结

特性 token discovery-token
用途 API 访问、节点加入 仅用于节点发现和初始加入
有效期 较长(可配置) 一次性或短期有效
安全性 需结合 RBAC 控制权限 依赖 CA 证书哈希验证集群合法性
生成方式 kubeadm token create kubeadm init 自动生成
相关推荐
我是谁??1 小时前
ubuntu22.04 通过docker部署vLLM(Qwen3-0.6B)大模型+New API+OpenWebUI
docker·容器·vllm
Patrick_Wilson1 小时前
K8s 探针避坑:Next.js 不同部署模式下的健康检查实践
kubernetes·node.js·next.js
运维瓦工1 小时前
DevOps 生态介绍(十):Docker Compose 核心 YAML 配置详解与常用命令大全
spring cloud·docker·容器
Plastic garden2 小时前
K8s(10)NFS 的动态 PV 创建数据库给k8s的mysql和redis
docker·容器·kubernetes
Plastic garden2 小时前
k8s(11) Pod 控制器,服务发现与存储管理
kubernetes
与海boy2 小时前
docker compose minio
docker·容器·eureka
星辰徐哥3 小时前
云原生核心特性:容器化、微服务与DevOps的通俗解读
微服务·云原生·devops
武子康3 小时前
调查研究-167 Docker Compose 详解:从单容器到多服务编排的工程化入口
运维·docker·云原生·容器·kubernetes·k8s·docker-compose
heimeiyingwang4 小时前
【架构实战】分布式会话:从Session到JWT的演进
微服务·云原生·架构