博客再次改版了,这次在细节方面做了一些调整。
k8s证书有效期只有一年的解决方法
时间:2021-08-04 17:11:06 +0800 CST 浏览:56

摘要

大概的错误提示:“certificate has expired or is not yet valid”。解决方案:生成时间更长的有效期,保证证书不会在短时间失效,如果有必要的话,也可以做相应的监控告警。

查看证书的到期时间

kubeadm alpha certs check-expiration

修改kubeadm

cd /usr/local/src/
git clone -b v1.18.6 --depth=1 https://github.com/kubernetes/kubernetes.git
cd kubernetes

vim cmd/kubeadm/app/constans/constans.go
# 找到 CertificateValidity = time.Hour * 24 * 365, 修改为下面一行内容
CertificateValidity = time.Hour * 24 * 365 * 100

编译kubeadm

cd /usr/local/src/kubernetes/
make WHAT=cmd/kubeadm
# 编译完生成_output目录

备份之前的kubeadm,然后用新的

mv /usr/bin/kubeadm /usr/bin/kubeadm.old
cp _output/bin/kubeadm /usr/bin/kubeadm

备份之前的证书,重新生成证书

cp -rf /etc/kubernetes/pki/  /etc/kubernetes/pki.old
# 更新证书
kubeadm alpha certs renew all
# 重启服务
# docker ps |grep -E 'k8s_kube-apiserver|k8s_kube-controller-manager|k8s_kube-scheduler|k8s_etcd_etcd' | awk -F ' ' '{print $1}' |xargs docker restart
docker ps |grep -E 'k8s_kube-apiserver|k8s_kube-controller-manager|k8s_kube-scheduler|etcd' | awk -F ' ' '{print $1}' |xargs docker restart

再次验证证书的有效期

kubeadm alpha certs check-expiration


如果这篇文章对你有所帮助,可以通过下边的“打赏”功能进行小额的打赏。

本网站部分内容来源于互联网,如有侵犯版权请来信告知,我们将立即处理。


来说两句吧