Welcome 微信登录

首页 / 数据库 / MySQL / 再看MongoDB副本集

因为MongoDB使用内存映射文件,所以必须使用64位版本。官方下载地址如下:http://www.mongodb.org/downloads实验环境使用的Mongodb版本为mongodb-linux-x86_64-2.6.0由三台虚拟机搭建,配置为单核,1G内存。实验环境如下:MongoDB的副本集不同于以往的主从模式。在集群Master故障的时候,副本集可以自动投票,选举出新的Master,并引导其余的Slave服务器连接新的Master,而这个过程对于应用是透明的。可以说MongoDB的副本集是自带故障转移功能的主从复制。CentOS编译安装MongoDB http://www.linuxidc.com/Linux/2012-02/53834.htmCentOS 编译安装 MongoDB与mongoDB的php扩展 http://www.linuxidc.com/Linux/2012-02/53833.htmCentOS 6 使用 yum 安装MongoDB及服务器端配置 http://www.linuxidc.com/Linux/2012-08/68196.htmUbuntu 13.04下安装MongoDB2.4.3 http://www.linuxidc.com/Linux/2013-05/84227.htmMongoDB入门必读(概念与实战并重) http://www.linuxidc.com/Linux/2013-07/87105.htm《MongoDB 权威指南》(MongoDB: The Definitive Guide)英文文字版[PDF] http://www.linuxidc.com/Linux/2012-07/66735.htm1 相对于传统主从模式的优势传统的主从模式,需要手工指定集群中的Master。如果Master发生故障,一般都是人工介入,指定新的Master。这个过程对于应用一般不是透明的,往往伴随着应用重新修改配置文件,重启应用服务器等。而MongoDB副本集,集群中的任何节点都可能成为Master节点。一旦Master节点故障,则会在其余节点中选举出一个新的Master节点。并引导剩余节点连接到新的Master节点。这个过程对于应用是透明的。2 Bully选举算法Bully算法是一种协调者(主节点)竞选算法,主要思想是集群的每个成员都可以声明它是主节点并通知其他节点。别的节点可以选择接受这个声称或是拒绝并进入主节点竞争。被其他所有节点接受的节点才能成为主节点。节点按照一些属性来判断谁应该胜出。这个属性可以是一个静态ID,也可以是更新的度量像最近一次事务ID(最新的节点会胜出)他的选举过程大致如下:? 得到每个服务器节点的最后操作时间戳。每个mongodb都有oplog机制会记录本机的操作,方便和主服务器进行对比数据是否同步还可以用于错误恢复。? 如果集群中大部分服务器down机了,保留活着的节点都为 secondary状态并停止,不选举了。? 如果集群中选举出来的主节点或者所有从节点最后一次同步时间看起来很旧了,停止选举等待人来操作。? 如果上面都没有问题就选择最后操作时间戳最新(保证数据是最新的)的服务器节点作为主节点。选举的触发条件初始化一个副本集时。副本集和主节点断开连接,可能是网络问题。主节点挂掉。人为介入,比如修改节点优先级等选举还有个前提条件,参与选举的节点数量必须大于副本集总节点数量的一半,如果已经小于一半了所有节点保持只读状态。3 搭建副本集集群每个虚拟机都使用如下的配置文件启动实例:dbpath =/home/lihuilin/mongodatasmallfiles =truereplSet =mvbox然后在任意一台虚拟机登陆mongo,输入如下设置config = { _id:"mvbox", members:[{_id:0,host:"192.168.1.1:27017"},{_id:1,host:"192.168.1.2:27017"},{_id:2,host:"192.168.1.3:27017"}]}rs.initiate(config);可以看到副本集已经生效可以使用rs.status()查看集群状态,或者rs.isMaster()更多详情见请继续阅读下一页的精彩内容: http://www.linuxidc.com/Linux/2014-06/102868p2.htm
  • 1
  • 2
  • 3
  • 下一页
GoldenGate将Oracle数据同步到GreenPlumMongoDB故障处理相关资讯      MongoDB副本集 
  • MongoDB 搭建副本集(Replica Set  (今 07:51)
  • MongoDB的副本集节点角色介绍及选  (06月13日)
  • MongoDB集群上副本集(replica set  (04月10日)
  • MongoDB副本集实现及读写分离  (06月13日)
  • MongoDB 复制(副本集)  (04月14日)
  • MongoDB 副本集+分片 架构部署  (04月10日)
本文评论 查看全部评论 (0)
表情: 姓名: 字数


评论声明
    版权所有©石家庄振强科技有限公司2024 冀ICP备08103738号-5 网站地图