我有一个3节点的docker swarm集群。我们可能想要有2位经理。我知道曾经只有一位领导人。由于它是一个3节点集群,我试图找到一些文献来了解多个管理者的优缺点。我需要这个信息,因为在我的3节点集群中,如果我有2个主服务器,1个工作者,如果我只是在集群中创建3个主服务器,那么缺点是什么。任何想法都会有所帮助。
答案 0 :(得分:10)
两位经理的Docker群是不推荐。
<强>为什么吗
Docker swarm implements a RAFT consensus:
Raft容忍最多(N-1)/ 2次失败,并且需要大多数或法定数量的(N / 2)+1成员就提议给群集的值达成一致。这意味着在运行Raft的5个管理器集群中,如果3个节点不可用,系统将不再处理任何其他请求来安排其他任务
因此,对于2名经理,如果一个人失败,另一个人将无法安排其他任务(没有集群升级,没有新服务等......)。
文档也清楚number of managers you should have for high availability:
调整部署规模
要使群集能够容忍更多故障,请将其他副本节点添加到群集中。
Manager nodes Failures tolerated 1 0 3 1 5 2 7 3
简而言之,正如文件所述here:
添加更多管理员并不意味着提高可扩展性或提高性能。总的来说,情况正好相反。