一、mongo Replica Sets 三个节点部署 主从节点之间复制数据,与分片不同,集群在一个节点丢失后,其他节点可以继续工作。 二、文件配置 如上图: 到mongo官网下载最新的mongo。并且复制三份,分别命名为:mongob_1,mongodb_2,mongodb_3建mongo_1.bat,mongo_
一、mongo Replica Sets 三个节点部署 主从节点之间复制数据,与分片不同,集群在一个节点丢失后,其他节点可以继续工作。
二、文件配置
如上图:
到mongo官网下载最新的mongo。并且复制三份,分别命名为:mongob_1,mongodb_2,mongodb_3建mongo_1.bat,mongo_2.bat,mongo_3.bat bat中内容分别是:mongodb_1\bin\mongod --replSet rs1 --keyFile data\key\r0 --port 4001 --dbpath data\data\r0 --logpath=data\log\r0.log --logappend mongodb_2\bin\mongod --replSet rs1 --keyFile data\key\r1 --port 4002 --dbpath data\data\r1 --logpath=data\log\r1.log --logappend mongodb_3\bin\mongod --replSet rs1 --keyFile data\key\r2 --port 4003 --dbpath data\data/r2 --logpath=data\log\r2.log --logappend 不同颜色区分不同文件建立data文件夹用与存放数据与日志在data文件夹中建立data,key,log文件夹在key文件夹中分别建r0,r1,r2文件,并且在文件中写入相同的key字符串,只需要一样即可。分别点击mongo_1.bat,mongo_2.bat,mongo_3.bat 启动mongo三、配置服务
1.连接到4001端口并且配置成员
2.初始化配置
3.上面已经完成了集群,重新登录4001,然后插入数据
4.在MongoVUE中可以查看到三个节点都有了刚刚插入的数据了。
5.查看集群状态。health:1表示正常,0表示异常。 PRIMARY表示主库
6.另外查看集群状态方法。可以看到集群IP等信息
7.这里可以查看集群主从操作日志。 ts表示时间戳,op表示操作 ,ns表示collection name,o表示数据
8.查看操作日志信息
9.查看从库同步状态,最后同步世界
10.查看整个集群的节点信息
三、集群管理增删节点
通过rs.add(‘ip:port’)增加节点
2.读写分离
执行db.getMongo().setSlaveOk() 可以让从库具有读的功能,这样可以使主从读写分离。
3.故障转移 当我们停掉主库后,查询状态,发现4002变成主库了
4.恢复变从库,当重新开启4001mongo,会发现原先的主库现在变成从库了。
5.复制节点数据部署新节点,实现快速增加节点,使用--fastsync启动节点,在使用rs.add增加节点即可。
增加mongo_5.bat 内容如下:
mongodb_5\bin\mongod --replSet rs1 --keyFile data\key\r4 --port 4005 --dbpath data/data/r4 --logpath=data\log\r4.log --logappend --fastsync
6.移除节点用 rs.remove(“ip:port”); 再次查看集群状态发现节点被移除了