SpringBoot + MonggoDB副本集windows下集群读写分离搭建--进阶篇

接:基础篇

新增两个节点,模拟Mongodb集群选举

1.新增Mongodb服务,配置接上篇

2.开启服务

3.登录任意一台服务

4.新增集群节点

rs.add( { host: "127.0.0.1:27020", priority: 0, votes: 0 } )
rs.add( { host: "127.0.0.1:27021", priority: 0, votes: 0 } )

5.查看状态

rs.status()
{
        "set" : "rs0",
        "date" : ISODate("2021-03-10T01:40:33.260Z"),
        "myState" : 1,
        "term" : NumberLong(14),
        "syncingTo" : "",
        "syncSourceHost" : "",
        "syncSourceId" : -1,
        "heartbeatIntervalMillis" : NumberLong(2000),
        "optimes" : {
                "lastCommittedOpTime" : {
                        "ts" : Timestamp(1615340428, 1),
                        "t" : NumberLong(14)
                },
                "readConcernMajorityOpTime" : {
                        "ts" : Timestamp(1615340428, 1),
                        "t" : NumberLong(14)
                },
                "appliedOpTime" : {
                        "ts" : Timestamp(1615340428, 1),
                        "t" : NumberLong(14)
                },
                "durableOpTime" : {
                        "ts" : Timestamp(1615340428, 1),
                        "t" : NumberLong(14)
                }
        },
        "members" : [
                {
                        "_id" : 0,
                        "name" : "127.0.0.1:27017",
                        "health" : 1,
                        "state" : 1,
                        "stateStr" : "PRIMARY",
                        "uptime" : 2767,
                        "optime" : {
                                "ts" : Timestamp(1615340428, 1),
                                "t" : NumberLong(14)
                        },
                        "optimeDate" : ISODate("2021-03-10T01:40:28Z"),
                        "syncingTo" : "",
                        "syncSourceHost" : "",
                        "syncSourceId" : -1,
                        "infoMessage" : "",
                        "electionTime" : Timestamp(1615339036, 1),
                        "electionDate" : ISODate("2021-03-10T01:17:16Z"),
                        "configVersion" : 4,
                        "self" : true,
                        "lastHeartbeatMessage" : ""
                },
                {
                        "_id" : 1,
                        "name" : "127.0.0.1:27018",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 1263,
                        "optime" : {
                                "ts" : Timestamp(1615340428, 1),
                                "t" : NumberLong(14)
                        },
                        "optimeDurable" : {
                                "ts" : Timestamp(1615340428, 1),
                                "t" : NumberLong(14)
                        },
                        "optimeDate" : ISODate("2021-03-10T01:40:28Z"),
                        "optimeDurableDate" : ISODate("2021-03-10T01:40:28Z"),
                        "lastHeartbeat" : ISODate("2021-03-10T01:40:31.582Z"),
                        "lastHeartbeatRecv" : ISODate("2021-03-10T01:40:32.375Z"),
                        "pingMs" : NumberLong(0),
                        "lastHeartbeatMessage" : "",
                        "syncingTo" : "127.0.0.1:27017",
                        "syncSourceHost" : "127.0.0.1:27017",
                        "syncSourceId" : 0,
                        "infoMessage" : "",
                        "configVersion" : 4
                },
                {
                        "_id" : 2,
                        "name" : "127.0.0.1:27019",
                        "health" : 1,
                        "state" : 7,
                        "stateStr" : "ARBITER",
                        "uptime" : 2735,
                        "lastHeartbeat" : ISODate("2021-03-10T01:40:32.159Z"),
                        "lastHeartbeatRecv" : ISODate("2021-03-10T01:40:32.166Z"),
                        "pingMs" : NumberLong(0),
                        "lastHeartbeatMessage" : "",
                        "syncingTo" : "",
                        "syncSourceHost" : "",
                        "syncSourceId" : -1,
                        "infoMessage" : "",
                        "configVersion" : 4
                },
                {
                        "_id" : 3,
                        "name" : "127.0.0.1:27020",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 1768,
                        "optime" : {
                                "ts" : Timestamp(1615340428, 1),
                                "t" : NumberLong(14)
                        },
                        "optimeDurable" : {
                                "ts" : Timestamp(1615340428, 1),
                                "t" : NumberLong(14)
                        },
                        "optimeDate" : ISODate("2021-03-10T01:40:28Z"),
                        "optimeDurableDate" : ISODate("2021-03-10T01:40:28Z"),
                        "lastHeartbeat" : ISODate("2021-03-10T01:40:32.213Z"),
                        "lastHeartbeatRecv" : ISODate("2021-03-10T01:40:33.253Z"),
                        "pingMs" : NumberLong(0),
                        "lastHeartbeatMessage" : "",
                        "syncingTo" : "127.0.0.1:27017",
                        "syncSourceHost" : "127.0.0.1:27017",
                        "syncSourceId" : 0,
                        "infoMessage" : "",
                        "configVersion" : 4
                },
                {
                        "_id" : 4,
                        "name" : "127.0.0.1:27021",
                        "health" : 1,
                        "state" : 2,
                        "stateStr" : "SECONDARY",
                        "uptime" : 1760,
                        "optime" : {
                                "ts" : Timestamp(1615340428, 1),
                                "t" : NumberLong(14)
                        },
                        "optimeDurable" : {
                                "ts" : Timestamp(1615340428, 1),
                                "t" : NumberLong(14)
                        },
                        "optimeDate" : ISODate("2021-03-10T01:40:28Z"),
                        "optimeDurableDate" : ISODate("2021-03-10T01:40:28Z"),
                        "lastHeartbeat" : ISODate("2021-03-10T01:40:32.205Z"),
                        "lastHeartbeatRecv" : ISODate("2021-03-10T01:40:33.202Z"),
                        "pingMs" : NumberLong(0),
                        "lastHeartbeatMessage" : "",
                        "syncingTo" : "127.0.0.1:27017",
                        "syncSourceHost" : "127.0.0.1:27017",
                        "syncSourceId" : 0,
                        "infoMessage" : "",
                        "configVersion" : 4
                }
        ],
        "ok" : 1,
        "operationTime" : Timestamp(1615340428, 1),
        "$clusterTime" : {
                "clusterTime" : Timestamp(1615340428, 1),
                "signature" : {
                        "hash" : BinData(0,"AAAAAAAAAAAAAAAAAAAAAAAAAAA="),
                        "keyId" : NumberLong(0)
                }
        }
}

6.测试集群

执行上篇测试方法,查看数据库数据,发现成功保存,集群配置成功

7.测试集群选举

通过rs.status()命令,查看状态后,可以看到27017为当前主服务,停掉27017主服务,运行测试方法,查看集群是否正常工作即可,也可再次通过rs.status()命令查看集群状态

总结:通过配置Mongodb集群,测试集群选举,下次调试Mongodb集群读写分离的详细情况。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值