mongodb高可用部署有主从复制和复制集

MongoDB 高可用可用分两种:
Master-Slave 主从复制:
只需要在某一个服务启动时加上–master 参数,而另一个服务加上–slave 与–source 参数,

即可实现同步。MongoDB 的最新版本已不再推荐此方案。主从复制虽然可以承受一定的负载压力,但这种方式仍然是一个单点,如果主库挂了,数据写入就成了风险。


Replica Sets复制集:
MongoDB 在 1.6 版本对开发了新功能replica set,这比之前的replication 功能要强大一
些,增加了故障自动切换和自动修复成员节点,各个DB 之间数据完全一致,大大降低了维
护成功。auto shard 已经明确说明不支持replication paris,建议使用replica set,replica set

故障切换完全自动。


要构建一个 MongoDB Sharding Cluster,需要三种角色:
Shard Server
即存储实际数据的分片,每个Shard 可以是一个mongod 实例,也可以是一组mongod 实例
构成的Replica Set。为了实现每个Shard 内部的auto-failover,MongoDB 官方建议每个Shard
为一组Replica Set。
Config Server
为了将一个特定的collection 存储在多个shard 中,需要为该collection 指定一个shard key,
例如{age: 1} ,shard key 可以决定该条记录属于哪个chunk。Config Servers 就是用来存储:
所有shard 节点的配置信息、每个chunk 的shard key 范围、chunk 在各shard 的分布情况、
该集群中所有DB 和collection 的sharding 配置信息。
Route Process
这是一个前端路由,客户端由此接入,然后询问Config Servers 需要到哪个Shard 上查询或
保存记录,再连接相应的Shard 进行操作,最后将结果返回给客户端。客户端只需要将原本
发给mongod 的查询或更新请求原封不动地发给Routing Process,而不必关心所操作的记录
存储在哪个Shard 上。


关于复制集配置架构官网给了建议:(https://docs.mongodb.com/manual/core/replica-set-members/)

The minimum recommended configuration for a replica set is: A primary, a secondary, and an arbiter. Most deployments, however, will keep three members that store data: A primary and two secondary members.

大意是:最少配置复制集是一个主,一个从,一个仲裁节点。但是比较多的部署方案是部署是一个主和两个从节点。所以说是可以没有仲裁节点的。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值