我在 Azure 上有一个使用 asc-engine 创建的 k8s 集群。它有4个Windows代理节点。
最近有 2 个节点进入未就绪状态并持续了一天多。为了纠正这种情况,我在两个未就绪的节点上执行了“kubectl删除节点”命令,认为它们会以与重新启 Action 为部署一部分的 Pod 相同的方式重新启动。
没有这样的运气。这些节点不再出现在“kubectl getnodes”列表中。支持节点的虚拟机仍然存在并且仍在运行。我尝试重新启动虚拟机,认为这可能会导致它们自行注册,但没有成功。
如何让节点重新成为 k8s 集群的一部分?否则,我该如何从这种情况中恢复过来?最糟糕的情况是我可以简单地扔掉整个集群并重新创建它,但我真的很想简单地修复我所拥有的。
最佳答案
您可以删除虚拟机并重新运行您的 acs 引擎模板,这应该恢复节点(尽管我没有真正测试您的具体场景)。或者您可以简单地创建一个新集群,这不会花费很多时间,因为您只需要运行模板即可。
k8s 中的对象删除无法恢复。可以肯定的是,一旦您删除它们,它们就会从 etcd 中清除。
关于azure - 如何撤消 kubectl 删除节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54796360/