无证书恢复Kubernetes群集

无证书恢复Kubernetes群集,kubernetes,kubeadm,Kubernetes,Kubeadm,我在实验室里有以下场景,我想看看是否有可能恢复。群集已断开,但这是意料之中的事,因为我正在测试断开群集后还能恢复到什么程度 环境: 库伯内特斯1.16.3 库贝斯里 我做了一些实验,没有关于这个集群的任何数据,但我仍然很好奇它是否有可能恢复。我有一个健康的3节点etcd集群,具有原始配置(所有名称空间、工作负载、配置映射等)。我没有控制平面的原始SSL证书 我从集群中删除了所有节点(kubeadm重置)。我有原始清单和kubelet配置,并尝试重新初始化主节点。这比我想象的要成功得多,但不是我想

我在实验室里有以下场景,我想看看是否有可能恢复。群集已断开,但这是意料之中的事,因为我正在测试断开群集后还能恢复到什么程度

环境: 库伯内特斯1.16.3 库贝斯里

我做了一些实验,没有关于这个集群的任何数据,但我仍然很好奇它是否有可能恢复。我有一个健康的3节点etcd集群,具有原始配置(所有名称空间、工作负载、配置映射等)。我没有控制平面的原始SSL证书

我从集群中删除了所有节点(kubeadm重置)。我有原始清单和kubelet配置,并尝试重新初始化主节点。这比我想象的要成功得多,但不是我想要的。 kubeadm初始化成功后,kubelet和控制平面容器成功启动,但未创建相应的吊舱。我能够将KubeAPI与kubectl一起使用,并查看节点、名称空间、部署等

在kube系统命名空间中,所有守护程序仍然存在,但POD不会以以下消息开头:

49m         Warning   FailedCreate        daemonset/kube-proxy                                Error creating: Timeout: request did not complete within requested timeout
kubelet记录了以下重新控制飞机吊舱

Jul 21 22:30:02 k8s-master-4 kubelet[13791]: E0721 22:30:02.088787   13791 kubelet.go:1664] Failed creating a mirror pod for "kube-scheduler-k8s-master-4_kube-system(3e128801ef687b022f6c8ae175c9c56d)": Timeout: request did not complete within requested timeout
Jul 21 22:30:53 k8s-master-4 kubelet[13791]: E0721 22:30:53.089517   13791 kubelet.go:1664] Failed creating a mirror pod for "kube-controller-manager-k8s-master-4_kube-system(da5cfae13814fa171a320ce0605de98f)": Timeout: request did not complete within requested timeout
在kubeadm重置/初始化过程中,我已经有了一些步骤,因此我可以到达现在的位置(删除serviceaccounts以重置令牌,删除一些configmaps(kuebadm等))

我的问题是-是否有可能在没有证书的情况下恢复控制飞机。如果这是一个复杂但仍然可行的过程,我仍然想知道

感谢您的帮助

亨罗

是否可以在没有证书的情况下恢复控制平面


是的,应该可以。证书谢谢Rico!我忘记提到的一个有趣的事实是,我在APIServerPod中得到了相同的错误,但几天后,pod最终被创建了。我正在查看调度器和控制器管理器的证书配置,但我认为它们已经是新的了,并且是由kube adm在初始化阶段之一创建的。我在想,集群中必须有更多的证书配置用于吊舱和控制器。我这里有一些好消息。集群仍然部分中断,但控制平面吊舱(包括kube代理、calico、dns吊舱)现在已启动并运行。我发现了这一点,但不确定这与我的案件有何关联。我有三个变异的Webhook,并将它们全部删除。一旦我删除了它们,POD就被创建并开始计划。此时,只有几个应用程序,如prometheus或cert manager,主要是因为身份验证。我相信这个问题很容易解决。我还能够添加大量新的主节点和工作节点。我将不得不读一些关于Webhook的书,以便更好地理解它们是如何阻止创建控制平面吊舱的。所有这些都已修复。控制平面重新部署,所有应用程序正常运行。真棒,很高兴听到!