k8s集群证书默认只有1年有效期,为避免证书过期导致集群不可用,需要对集群证书进行续期,可参考以下方式进行续期(针对k8s版本1.23或以上)
登录到集群master节点,确认节点已安装kubeadm,没有的话请先安装。
一、针对性续期:
先检查哪个文件过期:./kubeadm certs check-expiration
若证书过期,使用该命令续期:./kubeadm certs renew xxx ##其中xxx为证书名称,通过check-expiration可看出
若配置文件(xxx.conf)过期,移走对应文件(在/etc/kubernetes目录下),然后使用该命令续期:./kubeadm init phase kubeconfig xxx.conf ##其中xxx为配置文件名称,通过check-expiration可看出
二、全部续期:
移走/etc/kubernetes/*.conf,备份/etc/kubernetes/pki
./kubeadm certs renew all
./kubeadm init phase kubeconfig all
最后重启组件:
mv /etc/kubernetes/manifests/*.yaml /tmp/
##运行“docker ps | grep -v pause | grep kube”查看apiserver、controller、scheduler、etcd是否停止
mv /tmp/*.yaml /etc/kuberntes/manifests/
##运行“docker ps | grep -v pause | grep kube”查看apiserver、controller、scheduler、etcd是否已恢复启动
续期完成