Kubernetes集群实践-排错(01)Node节点证书过期
Posted t_huanghai
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Kubernetes集群实践-排错(01)Node节点证书过期相关的知识,希望对你有一定的参考价值。
由于一些不可描述的原因,导致了节点证书没有更新,kubelet启动不了。此时就需要手动处理更新节点证书。官方文档中其实又详细的描述,再次还是个人记录下:
环境和报描述
......]Part of the existing bootstrap client certificate is expired: 2019-12-20 08:51:59 +0000 UTC
......] failed to run Kubelet: unable to load bootstrap kubeconfig: stat /etc/kubernetes/bootstrap-kubelet.conf: no such file or directory
大概类似上述的描述。我的Kubernetes版本是1.18.2,我的主节点还在,主节点/etc/kubernetes/pki/ca.key文件也在。
具体修复操作
- 从故障节点备份和删除 /etc/kubernetes/kubelet.conf 和 /var/lib/kubelet/pki/kubelet-client*。
- 在集群中具有 /etc/kubernetes/pki/ca.key 的、正常工作的控制平面节点上 执行 kubeadm kubeconfig user --org system:nodes --client-name system:node:$NODE > kubelet.conf。 $NODE 必须设置为集群中现有故障节点的名称。 如果你的集群没有 ca.key,你必须在外部对 kubelet.conf 中的嵌入式证书进行签名。
- 将得到的 kubelet.conf 文件复制到故障节点上,作为 /etc/kubernetes/kubelet.conf。在故障节点上重启 kubelet(systemctl restart kubelet),等待 /var/lib/kubelet/pki/kubelet-client-current.pem 重新创建。
参考
- 官方文档(英文)
https://kubernetes.io/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/ - 官方文档(中文)
https://kubernetes.io/zh/docs/setup/production-environment/tools/kubeadm/troubleshooting-kubeadm/
以上是关于Kubernetes集群实践-排错(01)Node节点证书过期的主要内容,如果未能解决你的问题,请参考以下文章
使用 Prometheus + Grafana 对 Kubernetes 进行性能监控的实践
Kubernetes容器集群管理环境 - Node节点的移除与加入