2015-04-30 82 views
0

我知道mongodb具有主从架构。mongodb单点故障

因此,我认为主控将是mongoDB中的单点故障,因为它负责处理所有请求并将其发送到从节点。但是,当主设备出现故障时,则会从从设备重新选择一个新的主设备。因此,我需要澄清单点故障所在。

mongoDB有单点故障吗?它在主节点中吗?

谢谢,

+0

请在https://dba.stackexchange.com上提问有关管理MongoDB的问题。我提名你的移民问题。 – Philipp

+0

不再有'主'这样的事物,当一个主要人物落下一个新的副主席接管为主要副本时,有一个主副本和许多副主副本。所以没有一个单一的失败点。在这里阅读更多:http://docs.mongodb.org/manual/replication/ – nickmilon

+0

@nickmilon不完全正确。看看这里http://docs.mongodb.org/manual/core/master-slave/ –

回答

2

MongoDB中可以以一种方式,有故障的单点(至少没有特定的MongoDB)进行设置。

当您按照建议(包括第三台服务器上的主服务器,辅助服务器和仲裁服务器)设置复制时,备用服务器在出现故障时将扮演主服务器的角色。请记住,这只适用于应用程序同时知道主要和次要(如何使其知道取决于驱动程序)。

当您拥有分片群集时,mongo路由器进程(mongos)和配置服务器成为其他可能的故障点,但您也可以设置配量路由器和配置服务器。当客户端发生故障时,要将客户端发送给其他mongos服务器,您需要第三方负载平衡解决方案。

对于a proper production MongoDB setup with clustering,MongoDB的公司建议:

  • 至少2 mongos路由器
  • 究竟3个配置服务器
  • 每碎片
  • 3服务器(伯,仲和仲裁器),其中所述仲裁器不一定需要专用服务器,并且可以与路由器,配置服务器,不同副本集或应用服务器的成员共享硬件。