1.k8s证书过期信息
[root@master1 k8sfile]# kubectl get node
Unable to connect to the server: x509: certificate has expired or is not yet valid: current time 2026-06-09T15:21:41+08:00 is after 2026-05-21T08:38:55Z
2.查看证书信息
kubeadm certs check-expiration

3.一键续期所有证书
kubeadm certs renew all

4.更新管理员的 kubeconfig 文件
- 新的 admin.conf 已经生成,但由于 kubectl 还在读旧的配置,你需要把它拷贝过来覆盖旧的
# 备份并覆盖配置文件
mv $HOME/.kube/config $HOME/.kube/config.old
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config
5.重启控制面板组件加载新证书
- 证书更新在了磁盘上,但 API Server 等组件的进程还在内存中运行,所以我们需要强制它们重启。最稳妥的方式是临时移出静态 Pod 配置:
# 1. 进入静态 Pod 配置目录
cd /etc/kubernetes/manifests/
# 2. 将 yaml 文件移到上一级目录(此时 kubelet 会自动检测到并销毁旧的 API Server/etcd 等容器)
mv *.yaml ../
# 3. 等待 15-20 秒,让进程完全退出
sleep 20
# 4. 把 yaml 文件移回来(kubelet 会检测到文件,加载刚生成的新证书并启动新的容器)
mv ../*.yaml .
6.验证恢复
kubectl get node

7.查看证书到期时间,已经是364天了,续期完成
