【发布时间】:2021-11-12 20:36:48
【问题描述】:
Kubernetes 单节点的内部 IP 地址已更改,现在 kubelet 无法正常启动。
因此我开始更改以下文件的配置:
/.kube/config /etc/kubernetes/*.conf
我已将新的 IP 地址添加到这些文件中。 在这一步之后,我收到错误说 X509 证书对新 ip 无效。
为了解决这个问题,我做了以下步骤:
- 停止 kubelet 并从 /etc/kubernetes/pki 和 /etc/kubernetes/pki/etcd 中删除所有旧证书文件
- kubeadm init phase certs adminserver --adminserver-advertise-address --adminserver-cert-extra-sans
- kubeadm 初始化阶段证书 adminserver-kubelet-client
- kubeadm init phase certs front-proxy-ca
- kubeadm 初始化阶段证书前端代理客户端
- kubeadm 初始化阶段证书 apiserver-etcd-client
- kubeadm 初始化阶段证书 etcd-ca
- kubeadm 初始化阶段证书 etcd-healthcheck-client
- kubeadm 初始化阶段证书 etcd-peer
- kubeadm 初始化阶段证书 etcd-server
- kubeadm init phase kubeconfig all --apiserver-advertise-address
- kubeadm 初始化阶段证书全部更新
- 将 /etc/kubernetes/admin.conf 复制到 ~/.kube 并重命名为 config
- kubeadm 初始化阶段 kubelet-start
问题是我仍然收到一条错误消息,指出与新 IP 的连接被拒绝。我相信这是由于证书错误,但如果我将 apiserver.crt 文件与原始证书进行比较,它似乎是正确的。
我在本地运行的机器上尝试了相同的方法,我让 kubelet 正确启动并且 kubectl 再次工作。 谁能指出我做错了什么?
谢谢
【问题讨论】:
-
您使用的是哪个 Kubernetes 版本?您究竟是如何部署集群的?你看到this article了吗?
-
大家好。谢谢你的cmets。我找到了问题的原因。更改 /etc/kubernetes/manifests 中的文件后一切正常。系统已备份并运行。
-
请发布您的解决方案作为答案。
标签: kubernetes