k8s集群获取token添加node/worker节点的方法

在k8s安装过程中,kubeadm初始生成的token有效期只有24小时,但是集群在后期扩容会逐渐扩大,新增节点的时候需要重新生成token,具体操作如下

kubeadm token create --print-join-command
#返回
W1119 10:40:21.639789   10340 configset.go:202] WARNING: kubeadm cannot validate component configs for API groups [kubelet.config.k8s.io kubeproxy.config.k8s.io]
kubeadm join 192.168.90.220:6443 --token si8a8j.7ykocpr5nqsqmt7v     --discovery-token-ca-cert-hash sha256:1977d7ea82e2afe92573e8f6d35705470b6bba6a1b2a63ac25bef680a50ec121

可以使用以下命令查看新生成的token

kubeadm token list

微信截图_20211119104123.png

可以看到第二个就是新生成的

如果忘记记录刚才创建的新token的hash值,可以通过以下命令重新获取

openssl x509 -pubkey -in /etc/kubernetes/pki/ca.crt | openssl rsa -pubin -outform der 2>/dev/null | openssl dgst -sha256 -hex | sed 's/^.* //'

返回

1977d7ea82e2afe92573e8f6d35705470b6bba6a1b2a63ac25bef680a50ec121

也可以创建一个永久有效的token,命令如下

kubeadm token create --ttl 0

返回

TOKEN                     TTL         EXPIRES   USAGES                   DESCRIPTION                                                EXTRA GROUPS
ecfq7k.fgkgmmih6623b5wh   <forever>   <never>   authentication,signing   <none>                                                     system:bootstrappers:kubeadm:default-node-token
fz1l2k.feihii52w0vccbw2   23h         2021-11-20T09:58:27+08:00   authentication,signing   The default bootstrap token generated by 'kubeadm init'.   system:bootstrappers:kubeadm:default-node-token
si8a8j.7ykocpr5nqsqmt7v   23h         2021-11-20T10:40:21+08:00   authentication,signing   <none>                                                     system:bootstrappers:kubeadm:default-node-token

再次使用openssl命令获取hash值

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://sulao.cn/post/803.html