工作笔记 · 2023年7月28日 0

k8s 1.14/15/16/17/18 集群证书延期10年

参考文档 https://blog.51cto.com/u_14848702/5038108

copy sh文件

https://github.com/luckylucky421/kubernetes1.17.3/blob/master/update-kubeadm-cert.sh

执行的时候注意 加上参数

./update-kubeadm-cert.sh all

自动运行,增加证书有效期 10年,并且自动重启服务

k8s 1.20 以上的证书更新 请参考 https://blog.csdn.net/m0_37814112/article/details/120332478

kubeadm certs check-expiration 查看证书有效期

注意两个问题

1.在有效期内更新

备份配置文件和证书
cp -arp /etc/kubernetes/ /etc/kubernetes_`date +%F`

# 1、备份配置文件
kubectl get cm -o yaml -n kube-system kubeadm-config > /root/kubeadm.yaml

# 2、生产新的证书文件
kubeadm certs renew all

# 3、重启 apiserver、kube-controller、kube-scheduler、etcd 容器
docker ps | grep -v pause | grep -E “etcd|scheduler|controller|apiserver” | awk ‘{print $1}’ | awk ‘{print “docker”,”restart”,$1}’ | bash

2.过有效期内更新证书,需要将系统时间改为 有效期内的时间

# 1、修改系统时间到证书有效期时间内
date -s "2021-07-11 22:30:00"
#说明:时间修改完成后,证书就是在有效期内了,修改后集群就会恢复正常了,如果不正常可以重启下kubelet服务。

# 2、生产新的证书文件
kubeadm certs renew all

# 3、重启 apiserver、kube-controller、kube-scheduler、etcd 容器
docker ps | grep -v pause | grep -E "etcd|scheduler|controller|apiserver" | awk '{print $1}' | awk '{print "docker","restart",$1}' | bash