当Kubernetes大师失败时会发生什么?

时间:2016-08-26 17:55:29

标签: kubernetes openshift-origin

我一直试图弄清楚当Kubernetes master在只有一个master的集群中失败时会发生什么。如果发生这种情况,Web请求是否仍会被路由到pod,或者整个系统是否只是关闭了?

根据构建于Kubernetes(https://docs.openshift.com/enterprise/3.2/architecture/infrastructure_components/kubernetes_infrastructure.html)之上的OpenShift 3文档,如果主服务器出现故障,节点将继续正常运行,但系统将无法管理容器。对于香草Kubernetes来说这是一样的吗?

2 个答案:

答案 0 :(得分:32)

我的理解是主人运行API,现在(从1.3开始?)管理底层云基础架构。当它处于脱机状态时,API将处于脱机状态,因此群集不再是群集,而是此期间的一堆ad-hoc节点。群集将无法响应节点故障,创建新资源,将pod移动到新节点等。直到主服务器重新联机。

但是,在任何情况下,应用程序的生命将继续正常,除非重新启动节点,或者在此期间出现某种严重故障,因为TCP / UDP服务,负载平衡器,DNS,仪表板等。应该都继续运作。

如果重新启动节点,则在主服务器重新联机之前,DNS查询可能无法正确解析。

如果您想自己测试一下,我建议您kubeadm-dind-clusterkind

答案 1 :(得分:2)

没有主服务器的Kubernetes集群就像一家没有管理中心的公司。

除Manager(主节点)以外,没有其他人可以指示工人(k8s组件)
(即使您,集群的所有者,也只能指示Manager)

一切正常。直到工作完成或有事情停止为止。(因为主节点在分配工作后就死了)

由于没有经理为他们重新分配任何工作,因此工人们将等待,直到经理回来。

最佳做法是为集群分配多个管理者(主)。