K8S证书过期处理方法Unable to connect to the server: x509: certificate has expired or is not yet valid
今天突然发现K8S集群无法使用了。报如下错误
kubectl get nodes
Unable to connect to the server: x509: certificate has expired or is not yet valid: current time 2023-09-12T11:37:51+08:00 is after 2023-09-05T10:56:05Z
从报错信息上可以看出是证书过期导致。
查看证书信息
kubeadm certs check-expiration

从上图很明显看出确实是过期了。
解决方法:
备份相关文件
cp -r /etc/kubernetes /etc/kubernetes_202309121230
cp -r /root/.kube/config /root/.kube/config_202309121230
更新证书
kubeadm certs renew all

再次查看证书发现已成功更新
kubeadm certs check-expiration

复制config文件
cp /etc/kubernetes/admin.conf /root/.kube/config
再次查看可以成功
kubectl get node

更新完之后需要重启所有服务,否则会有其他问题。
docker ps |grep -E 'k8s_kube-apiserver|k8s_kube-controller-manager|k8s_kube-scheduler|k8s_etcd_etcd' | awk -F ' ' '{print $1}' |xargs docker restart
重启完服务还是不行的话,重启服务器准好,哈哈!!!
所有node节点需要重启kubelet服务
systemctl restart kubelet
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。