MongDB高可用可扩展架构验证方案(附实战命令)

1. 验证目标

  • 验证MongoDB的高可用部署。
  • 高可用部署条件下,MongoDB和MySQL的性能对比。
  • MongoDB可扩展架构的性能损耗。
  • 测试在可扩展架构下增加数据分区的影响。

2. 环境定义

2.1. MongoDB高可用环境

 
    如图,MongoDB的最小高可用环境由三个节点构成一个复制集(Replica Set),三个节点可以是主、副节点和Arbiter节点。其中仅有主节点可写可读,副节点(配置后)可读。为了应对节点分区的问题,MongoDB规定复制集中的节点数大于50%(也称作Majority)时,才可以选举出可写的主节点,这样,两节点的复制集在一个节点故障时,就变为只读状态了。因此,可以在复制集中增加一个观察作用的Arbiter节点,帮助最小高可用环境选举出主节点,Arbiter节点不存储数据。
2.1.1. 启动mongo服务器节点

    启动mongo服务器器时增加--replSet参数,指定复制集。例如:

mongod --replSet myapp --dbpath ~/node1 --fork
mongod --replSet myapp --dbpath ~/node2 --fork
mongod --replSet myapp --dbpath ~/arbiter –fork

    如果是在一台服务器上模拟,需要指定--port以避免端口冲突。

2.1.2. 配置复制集
    使用mongo命令连接到规划的主节点,初始化复制集
> rs.initiate()
等待约1分钟,单节点复制集创建好以后,就可以添加节点了
> rs.add(“<hostname1>:<port1>”)
> rs.add(“<hostname2>:<port2>”, {arbiterOnly: true})
Mongo 2.0添加Arbiter的命令为

                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值