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文件也在。

具体修复操作

  1. 从故障节点备份和删除 /etc/kubernetes/kubelet.conf 和 /var/lib/kubelet/pki/kubelet-client*。
  2. 在集群中具有 /etc/kubernetes/pki/ca.key 的、正常工作的控制平面节点上 执行 kubeadm kubeconfig user --org system:nodes --client-name system:node:$NODE > kubelet.conf。 $NODE 必须设置为集群中现有故障节点的名称。 如果你的集群没有 ca.key,你必须在外部对 kubelet.conf 中的嵌入式证书进行签名。
  3. 将得到的 kubelet.conf 文件复制到故障节点上,作为 /etc/kubernetes/kubelet.conf。在故障节点上重启 kubelet(systemctl restart kubelet),等待 /var/lib/kubelet/pki/kubelet-client-current.pem 重新创建。

参考

以上是关于Kubernetes集群实践-排错(01)Node节点证书过期的主要内容,如果未能解决你的问题,请参考以下文章

使用 Prometheus + Grafana 对 Kubernetes 进行性能监控的实践

kubernetes集群系列资料01---集群规划

Kubernetes容器集群管理环境 - Node节点的移除与加入

Kubernetes(k8s)单Matser集群架构的搭建(v1.20)

kubernetes Pod 异常排错

kubernetes排错系列:机房搬迁导致的节点NotReady