MongoDB 3.4 高可用集群搭建(一)单例,主从模式

一、mongodb单实例。这种配置只适合简易开发时使用,生产使用不行,因为单节点挂掉整个数据业务全挂,如下图。


虽然不能生产使用,但这个模式可以快速搭建启动,并且能够用mongodb的命令操作数据库。方法参加Mongo基础。

二、主从模式。使用mysql数据库时大家广泛用到,采用双机备份后主节点挂掉了后从节点可以接替主机继续服务。所以这种模式比单节点的高可用性要好很多。


下面看一下怎么一步步搭建一个mongodb的主从复制节点:

1、准备2个虚拟机,一个作为主服务器(192.168.4.198),一个作为从服务器(192.168.4.199),两个虚拟机都存在Mongo包。并分别在两个虚拟机上创建数据库存放文件夹。 /home/weixla/dada/db


2、启动主节点。 /home/weixla/mongodb-3.4.0/bin/mongod -dbpath /home/weixla/data/db -master


3、启动从节点。 /home/weixla/mongodb-3.4.0/bin/mongod -dbpath /home/weixla/data/db -slave -source 192.168.4.198:27017


4、测试

重新打开一个客户端,并连接到主节点,在主节点插入一个文档。


再打开一个客户端,连接到从节点,查询user集合,出现以下情况。


通过以下命令可以打开读的权限

rs.slaveOk()

从结果可以看到,从节点也出现了这条数据,并且自动生成的_id也是相同的。


5、主从节点数据一致性测试

首先停掉从服务器,之后在主节点再新加一条文档,如下图。



再次启动从节点,进行查询,如下图


从节点数据也是保存了同步。

6、故障转移测试

现在两台服务器如果主服务器挂掉了,从服务器可以正常运转吗?

首先停掉主节点,从服务器不停的扫描



这个时候依然可以查询从服务器


注意,这个时候向从服务器写入会提示如下信息


看起来从服务器没有自动接替主服务器的功能,只有手工处理了!

手工处理就只有先停掉从服务器,重新以作为主服务器的命令执行

 /home/weixla/mongodb-3.4.0/bin/mongod -dbpath /home/weixla/data/db -master

主节点恢复后再作为从服务器启动

 /home/weixla/mongodb-3.4.0/bin/mongod -dbpath /home/weixla/data/db -slave -source 192.168.4.199:27017


结语:

  • 主节点挂了能否自动切换连接?目前需要手工切换。
  • 主节点的写压力过大如何解决?
  • 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大?
  • 2
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值