搭建高可用mongodb集群(一:主从复制)
前面有一片文章写了如何搭建单实例MongoDB,但是发现一台生产环境仅仅不够,不能用于备份和恢复,在此参考几篇文章继续优化~
单实例安装参考:Centos6安装MongoDB3.0.3
上次推荐的Mongo可视化工具:https://pan.lanzou.com/i0gpi6f
再推荐一个Mongo可视化工具免安装:https://pan.lanzou.com/i0m7qaf
个人选择需要请自行下载,后面不再粘贴链接
--------------------------------------------------------------------
一、按照单实例模式安装好两台机器,实现主从复制模式:
1.本人环境:
MongDB1 192.168.186.129 master
MongDB2 192.168.186.131 slave
2.实现原理:
3.修改DB1配置文件
单实例安装好后:DB1修改配置文件vi mongodb.conf 配置文件,添加或修改成以下:
bind_ip=192.168.186.128 #监听IP,填本机IP
port=27017 #端口,根据需要自行修改,默认27017
dbpath=/usr/local/mongodb/data/mongodb_data #指定数据文件位置
logpath=/usr/local/mongodb/data/mongodb_log/mongodb.log #指定日志文件位置
fork=true #守护进程
4.修改DB2配置文件
DB2同样修改配置文件vi mongodb.conf 配置文件,添加或修改成以下:(和DB1只修改了IP)
bind_ip=192.168.186.131
port=27017
dbpath=/usr/local/mongodb/data/mongodb_data
logpath=/usr/local/mongodb/data/mongodb_log/mongodb.log
fork=true
5.启动master主
在Mongdb根目录执行:
./bin/mongod -f mongodb.conf -master
说明:-master 指定是主
无任何报错则成功,网页访问:https://ip:27017出现下图内容:
也可通过可视化工具连接是否可以连上。
6.启动slave从
同样Mongdb根目录下执行:
./bin/mongod -f mongodb.conf -slave -source 192.168.186.128:27017
说明:-slave 指定是从 -source指定主节点IP:端口
无任何报错则成功。网页访问:https://ip:27017出现下图内容:
也可通过可视化工具连接是否可以连上。
若以上有报错一定去查看日志文件,可以找出来问题的
7.验证主从复制是否成功
在主节点上连接到终端:(mongdb/bin目录下执行)
./mongo 192.168.186.128
#建立test 数据库。
>use test;
#插入一条数据
>db.testdb.insert({"lcry1":"testval1"})
#查询testdb数据看看是否成功
>db.testdb.find();
在从节点上连接到终端验证复制结果:(mongdb/bin目录下执行)
./mongo 192.168.186.131
#查看当前数据库
>show dbs;
若报错请先执行:rs.slaveOk()
#选择test数据库
>use test;
#查找内容
>db.testdb.find();
返回成功:
此方法还是有很多不妥,那就是主节点宕机后不会自动切换到从节点。
需要手动切换,切换方法:杀死从节点进程,执行
在从节点Mongdb根目录执行:
./bin/mongod -f mongodb.conf -master
到此结束:
若有问题和错误的地方欢迎博客导航留言功能私信我~~~
参考文章1:https://www.cnblogs.com/wangjing666/p/6837264.html
参考物文章2:https://segmentfault.com/a/1190000002924522