失效链接处理 |
Mongodb复制集(集群)搭建demo PDF 下载
本站整理下载:
相关截图:
主要内容:
1.Mongodb复制集是什么?
一组Mongodb复制集(Replica Set),就是一组mongod进程,这些进程维护着同一个数据集合,他们可以运行在不同的服务器上,甚至可以是同一台服务器上的不同端口。复制集提供了数据冗余和高可靠性,这是生产部署的基础。保证数据在生产部署时的冗余和可靠性,通过在不同的机器上保存副本来保证数据不会因为单点故障而丢失或导致整个系统无法对外提供服务。
2.Mongodb复制集是怎样的架构?
既然是集群,那么必然系统中有且不只有一个服务节点(Mongod进程)。通常的情况是奇数个节点,如:3,5,7… ,很少使用偶数个节点。节点中的每一个成员可以是以下的角色,但是一个稳定且健康运行的Mongodb复制集集群当中,有且仅有一个主节点,至少有一个副本节点,可以没有仲裁者。
1.主节点(Primary)
是 Replica Set 中唯一的接收写请求的节点,并将写入指令记录到 oplog 上。副本节点通过复制 oplog 的写入指令同步主节点的数据。Secondary。一个 Replica Set 有且只有Primary 节点,当Primary挂掉后,其他 Secondary 或者 Arbiter 节点会重新选举出来一个主节点。应用程序的默认读取请求也是发到 Primary节点处理的。
2.副本节点(Secondary)
通过复制主节点 oplog 中的指令与主节点保持同样的数据集,当主节点挂掉的时候,参与主节点选举。
3.仲裁者(Arbiter)
不存储实际应用数据,只投票参与选取主节点,但不会被选举成为主节点。
以比较常用的三节点集群为例,其成员可以是这样的。
一个Primary +两个Secondary组成,Primary宕机时,这两个Secondary都可能被选举为Primary。其中一个变为新的Primary,当原来的Primary恢复后,又会作为Secondary重新加入当前的复制集群。但是据我观察,它会夺回原来的Primary宝座。
|