K8S证书过期处理
K8S证书过期处理
一、查看证书过期时间
find /etc/kubernetes/pki/ -type f -name "*.crt" -print|xargs -L 1 -t -i bash -c 'openssl x509 -noout -text -in {}|grep After'
二、备份原来的配置文件和证书
find /etc/kubernetes/pki/ -regex '.*.[crt|key]'|grep -v sa|grep -v ca|xargs -i cp {
} /opt/
三、更新证书
chmod +x update-kubeadm-cert.sh
./update-kubeadm-cert.sh all
四、重启docker和kubelet
systemctl restart kubelet
systemctl restart docker
五、 查看pod节点正常说明证书签发正常
kubectl get all -n kube-system
kubectl get nodes
六、因为Jenkins之前用的凭据是用之前的证书生成的需要重新生成
- 打开~/.kube/config文件
cat ~/.kube/config
- 制作证书
- ca.crt
#复制certificate-authority-data的内容,运行以下命令生成ca.crt
echo "<certificate-authority-data>" | base64 -d > ca.crt
- client.crt
#复制client-certificate-data的内容,运行以下命令生成client.crt
echo "<client-certificate-data>" | base64 -d > client.crt
- client.key
#复制client-key-data的内容,运行以下命令生成
client.key echo "<client-key-data>" | base64 -d > client.key
- cert.pfx
#再根据前面步骤生成的ca.crt, client.crt和client.key来生成PKCS12格式的cert.pfx #以下命令运行时,需要输入4位以上的密码
openssl pkcs12 -export -out cert.pfx -inkey client.key -in client.crt -certfile ca.crt
- 把生成的证书下载到本地cert.pfx 上传到Jenkins里面
- 把ca证书配置到Jenkins系统配置里面
- 最后把Jenkins里面的配置文件更新一下
scp 10.110.149.175(k8s-masterIP):/root/.kube/config /root/.kube/config
- 最后验证,在Jenkins里面能查看到k8s的状态
kubectl get nodes
目录 返回
首页