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 小时前
K8S 资源菜单
docker·容器·kubernetes·k8s
wdfk_prog2 小时前
ROS教程08:从 TransportTCP::connect() 追到 TCPROS Connection Header、序列化与 Socket 数据传输
运维·缓存·docker·容器·ros
Zhu7582 小时前
docker环境快速部署postgresql数据库18及以上版本
postgresql·容器
安易算力5 小时前
PUE优化工程实践:从1.5到1.2的制冷架构与气流组织改造路径
网络·python·容器·架构·kubernetes
小马同学-6 小时前
nerdctl实战:Docker风格的Containerd操作利器
docker·容器·containerd
九皇叔叔6 小时前
Kubernetes 命令式对象配置详解:使用 YAML 管理 Kubernetes 资源
docker·容器·k8s
萤火夜7 小时前
Docker(四) Docker介绍
docker·容器
.冰块.8 小时前
Docker 镜像深度学习:分层 Copy‑on‑Write、Dockerfile 语法、Harbor 私有仓库实操
docker·容器·harbor·镜像·dockerfile·images
szephyr8 小时前
Docker 镜像瘦身实战:从 1.2GB 压到 85MB 的完整过程
docker·容器·部署·多阶段构建·镜像优化
小马同学-8 小时前
Containerd入门:架构原理与安装部署
容器·containerd