0
点赞
收藏
分享

微信扫一扫

k8s集群证书更新v1.13

西风白羽 2023-04-26 阅读 59

1、证书位置

通过kubeadm安装的集群,默认证书在master节点的/etc/kubernetes/pki与/etc/kubernetes目录下

2、查看证书过期时间

1.15之后的版本可以通过kubeadm alpha certs check-expiration 查看
for item in `find /etc/kubernetes/pki -maxdepth 2 -name "*.crt"`;do openssl x509 -in $item -text -noout| grep Not;echo $item; echo ======================$item===================;done

3、重新续期证书

# etcd使用的是external,不可以通过kubeadm续期。etcd证书有效期是10年,到期需要手动续期
# 先统一备份一下
cp -r /etc/kubernetes /etc/kubernetes_bak$(date +%F-%H)

# 更新证书
kubeadm alpha certs renew apiserver --config /root/kube/kubeadm.yaml
kubeadm alpha certs renew apiserver-kubelet-client --config /root/kube/kubeadm.yaml
kubeadm alpha certs renew front-proxy-client --config /root/kube/kubeadm.yaml
rm /etc/kubernetes/admin.conf /etc/kubernetes/controller-manager.conf /etc/kubernetes/scheduler.conf
kubeadm init phase kubeconfig all --config /root/kube/kubeadm.yaml
 
# 重启相关服务使证书生效
docker ps |grep -E 'k8s_kube-apiserver|k8s_kube-controller-manager|k8s_kube-scheduler' | awk -F ' ' '{print $1}' |xargs docker restart
 
# 查询apiserver,controller-manager,scheduler pod的日志,看是否有异常
将pod内的证书导出一份,确定使用的是最新证书
kubectl exec -it -n kube-system kube-apiserver-herlly.cn -- cat /etc/kubernetes/pki/apiserver-kubelet-client.crt > /tmp/apiserver-kubelet-client.crt
openssl x509 -in /tmp/apiserver-kubelet-client.crt -text -noout
 
kubelet 证书会自动轮转更新,不需要手动更新

举报

相关推荐

0 条评论