K8S修改证书年限

1.检查证书时间

kubeadm alpha certs check-expiration

2.更新证书(1年)

2.1 备份证书

cp -rp /etc/kubernetes /etc/kubernetes.bak

2.2 删除旧的证书

rm -rf /etc/kubernetes/pki/apiserver.key

2.3 重新生成证书

# 重新生成所有证书,执行这个即可 *********
kubeadm alpha certs renew all

2.4 重新生成配置文件

# 备份旧的配置
mv /etc/kubernetes/*.conf /tmp/

# 重新生成所有配置
kubeadm init phase kubeconfig all

# 重新生成单个配置文件
// 重新生成 admin 配置文件
kubeadm init phase kubeconfig admin
// 重新生成 kubelet 配置文件
kubeadm init phase kubeconfig kubelet

2.5 生效配置

  • 完成证书和配置文件的更新后,需要进行一系列后续操作保证更新生效,主要包括重启 kubelet、更新管理配置
# 重启 kubelet
systemctl restart kubelet

# 更新 admin 配置,将新生成的 admin.conf 文件拷贝,替换 ~/.kube 目录下的 config 文件
cp /etc/kubernetes/admin.conf ~/.kube/config

3.手动更新证书(自定义年限,10年)

3.1 查看当前年限

openssl x509 -in /etc/kubernetes/pki/apiserver.crt -text --noout

3.2 安装go语音环境

mkdir /data/

cd /data/

cp /root/go1.20.5.linux-amd64.tar.gz .
  • 解压配置
tar zxvf go1.20.5.linux-amd64.tar.gz -C /usr/local/

# 配置环境变量
vim /etc/profile
export PATH=$PATH:/usr/local/go/bin

# 加载环境变量
source /etc/profile

3.3 修改并配置证书

unzip kubernetes-1.20.4.zip

cp -rvf kubernetes-1.20.4 /data/kubernetes

cd /data/kubernetes/
  • 修改kubeadm源码包更新证书策略
vim cmd/kubeadm/app/util/pkiutil/pki_helpers.go
# 手写这一行
560         const duration3650d = time.Hour * 24 * 365 * 10
# 删除修改为设置的变量
583                 NotAfter:     time.Now().Add(duration3650d).UTC(),
  • 编译并替换文件
apt install -y make

make WHAT=cmd/kubeadm GOFLAGS=-v

cp _output/bin/kubeadm /root/
  • 更新
cp /usr/bin/kubeadm /usr/bin/kubeadm.old

cp /root/kubeadm /usr/bin/

chmod +x /usr/bin/kubeadm

cd /etc/kubernetes

cp -r pki/ pki.old

# 更新所有证书
kubeadm alpha certs renew all

# 重启 kubelet
systemctl restart kubelet

# 更新 admin 配置,将新生成的 admin.conf 文件拷贝,替换 ~/.kube 目录下的 config 文件
cp /etc/kubernetes/admin.conf ~/.kube/config
  • 验证
cd /etc/kubernetes/pki

openssl x509 -in apiserver.crt -text -noout

# 查看所有证书时间
kubeadm alpha certs check-expiration
posted @   A57  阅读(188)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示