Kubernetes 证书过期
、解决方案
✅ 方法 1:使用 kubeadm 自动更新证书(最推荐)
如果你的集群是用 kubeadm 部署的:
登录到 master 节点
执行:
sudo kubeadm certs check-expiration
查看哪些证书过期了。
如果确实过期:
续签所有证书
sudo kubeadm certs renew all
更新 kubeconfig 文件
sudo kubeadm init phase kubeconfig all
更新 kubectl 使用的配置文件
mkdir -p $HOME/.kube
sudo cp -f /etc/kubernetes/admin.conf $HOME/.kube/config
注:其中的 $HOME/.kube 指的是本地的 /root/.kube 目录
重新加载组件:
sudo systemctl restart kubelet
再次验证:
kubectl get nodes
✅ 方法 2:如果 kubeadm 命令不可用或集群不是 kubeadm 搭建
你需要手动重新生成证书。例如使用 openssl 或 cfssl。
关键点是:
新证书的 CN/O/U 必须与旧证书一致;
新证书签发后替换 /etc/kubernetes/pki/*.crt;
更新对应的 kubeconfig 文件(admin.conf、controller-manager.conf、scheduler.conf);
重启所有控制平面组件。
✅ 方法 3:临时应急方案(不推荐,仅用于排障)
如果只是想紧急访问集群,可以在本地:
sudo date -s “2025-10-11 10:00:00”
把系统时间暂时调回证书还未过期的时间段(例如 10 分钟前),
然后执行 kubectl 命令。
⚠️ 仅作应急!修复证书后请立即改回正确时间。
更多推荐



所有评论(0)