searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

kubernetes证书过期操作指引

2023-05-26 09:10:03
68
0

1、检查过期时间

for i in $(ls /etc/kubernetes/pki/*.crt);do echo ======$i======;openssl x509 -noout -text -in $i|grep Not;done

kubeadm alpha certs check-expiration
# 该命令显示 /etc/kubernetes/pki 文件夹中的客户端证书以及 kubeadm(admin.conf、controller-manager.conf 和 scheduler.conf) 使用的 kubeconfig 文件中嵌入的客户端证书的到期时间/剩余时间。
# 另外,kubeadm 会通知用户证书是否由外部管理; 在这种情况下,用户应该小心的手动/使用其他工具来管理证书更新。

2、备份数据

cp -rp /etc/kubernetes /etc/kubernetes.bak
kubeadm config view > /tmp/cluster.yaml
cp /root/.kube/config /root/.kube/config.bak

 

3、更新部分过期证书

kubeadm 不能管理由外部 CA 签名的证书。

##更新证书
kubeadm alpha  certs renew all #尝试全部更新,如报错,手动执行未更新的证书,如下操作
kubeadm alpha  certs renew apiserver #手动更新apiserver证书
kubeadm alpha  certs renew apiserver-kubelet-client
kubeadm alpha  certs renew front-proxy-client
kubeadm alpha  certs renew admin.conf
kubeadm alpha  certs renew controller-manager.conf
kubeadm alpha  certs renew scheduler.conf

# 替换/root/.kube/config证书
cp /etc/kubernetes/admin.conf /root/.kube/config

4、重启相应服务

docker ps | grep -v pause | grep -E "k8s_kube-scheduler|k8s_kube-controller|k8s_kube-apiserver" | awk '{print $1}' | xargs docker restart

5、再次验证证书有效期

for i in $(ls /etc/kubernetes/pki/*.crt);do echo ======$i======;openssl x509 -noout -text -in $i|grep Not;done

kubeadm alpha certs check-expiration

6、查看相应集群状态和pod状态

kubectl get pod -n kube-system 
kubectl get nodes
0条评论
0 / 1000