![Kubernetes 不会获取新证书,x509 证书已过期](https://linux22.com/image/793367/Kubernetes%20%E4%B8%8D%E4%BC%9A%E8%8E%B7%E5%8F%96%E6%96%B0%E8%AF%81%E4%B9%A6%EF%BC%8Cx509%20%E8%AF%81%E4%B9%A6%E5%B7%B2%E8%BF%87%E6%9C%9F.png)
kubectl version 客户端版本:v1.20.4 服务器版本:v1.20.15
1 月底,我们更新了用于系统上应用程序的外部证书(与 kubeadm 的 api/etcd 证书不同,这些证书仍然有效)。当时,这一切似乎都成功运行,我们可以在使用基于浏览器的应用程序时看到新证书的使用情况,并且重新启动/重新部署 pod 和部署都按预期进行
然而几周后,主服务器和工作服务器全部重新启动,从那时起,我们的集群就无法从我们的 nexus 中提取非本地镜像,在使用“kubectl describe pod [pod]”时出现以下错误,阻止它们完全初始化
无法拉取图像“pull.[servername]:30443/pwr-smallworld/fluent-bit:1.7.7”:rpc 错误:代码 = 未知 desc = 守护进程的错误响应:获取“https://pull.[servername]:30443/v2/”:x509:证书已过期或尚未生效:当前时间 2024-03-04T15:44:48Z 晚于 2024-02-03T15:05:47Z
错误所指的日期是被替换的旧证书的到期日期,到目前为止,我们所做的一切都无法让 kube 查看新证书
我们已经尝试了我们能想到的所有方法,但总而言之,我们已经尝试了(不包括与特定于供应商的应用程序相关的步骤)
- 使用新证书更新了我们在主服务器和 nfs 服务器上可以找到的所有旧证书实例,包括证书和 ca
- 重新部署彩虹桥
- 再生的秘密
- 我们确实做了 kubeadm 证书更新以查看是否有帮助,但没有帮助,并且在备份恢复后此更改被撤消。
- 我们已经初始化了 kublet
- 我们已经重启了服务器
- 我们已经重新应用了 yaml 文件
- 我们按照现有 stackoverflow 问题中的建议进行了操作,这些建议似乎存在类似(但不完全相同)的问题,但无济于事。
作为参考,这是 kubeadm certs check-expiration 的输出
我们还一直在使用以下命令在服务器上查找证书,以防我们在某处缺少证书
查找 /home/-type f-name“ .pem”-print|egrep-v'ca.crt$'|xargs-L 1-t-i bash-c'openssl x509-noout-text-in{}|grep After'
但到目前为止,它还没有在特定的档案目录之外找到任何与错误中报告的到期日期相匹配的证书。
乐意提供任何信息或尝试任何方法
先感谢您
亚当