k8s集群更新证书(kubeadm方式部署的集群)
# 特别注意:证书到期前替换!!!
1. 先查看有哪些证书即将过期
for item in `find /etc/kubernetes/pki -maxdepth 2 -name "*.crt"`;do openssl x509 -in item -text -noout| grep Not;echo ======================item===============;done
for f in (ls /etc/kubernetes/{admin,controller-manager,scheduler,kubelet}.conf); do
echof
kubectl --kubeconfig $f config view --raw -o jsonpath='{range .users[*]}{.user.client-certificate-data}{end}' | base64 -d | openssl x509 -enddate -noout
done
2. 备份
cp -R /etc/kubernetes /etc/kubernetes(date "+%Y%m%d")
cp -r /var/lib/etcd /var/lib/etcd.bak
cp /application/kube-ops/cluster.yaml /application/kube-ops/cluster.yaml.(date +%Y%m%d)
kubeadm config view > /application/kube-ops/cluster.yaml
3. 更新证书
# 三台master都要执行
# 生成证书
kubeadm alpha certs renew all --config=/application/kube-ops/cluster.yaml
mv /etc/kubernetes/admin.conf /etc/kubernetes/admin.bak
mv /etc/kubernetes/controller-manager.conf /etc/kubernetes/controller-manager.conf.bak
mv /etc/kubernetes/scheduler.conf /etc/kubernetes/scheduler.conf.bak
mv /etc/kubernetes/kubelet.conf /etc/kubernetes/kubelet.conf.bak
# 生成配置文件
kubeadm init phase kubeconfig all --config=/application/kube-ops/cluster.yaml
####kubeadm init phase kubeconfig kubelet
4. 重启服务
docker ps |grep -E 'k8s_kube-apiserver|k8s_kube-controller-manager|k8s_kube-scheduler|k8s_etcd_etcd' | awk -F ' ' '{print 1}' |xargs docker restart
# 各个节点重启Kubelet
systemctl restart kubelet
更新kubectl 配置
cp -i /etc/kubernetes/admin.confHOME/.kube/config
5. 查看证书时间
for item in `find /etc/kubernetes/pki -maxdepth 2 -name "*.crt"`;do openssl x509 -in item -text -noout| grep Not;echo ======================item===============;done
for f in (ls /etc/kubernetes/{admin,controller-manager,scheduler,kubelet}.conf); do
echof
kubectl --kubeconfig $f config view --raw -o jsonpath='{range .users[*]}{.user.client-certificate-data}{end}' | base64 -d | openssl x509 -enddate -noout
done
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· .NET10 - 预览版1新功能体验(一)