window server搭建mongodb集群

服务器3台:Windows Server 2016
版本:MongoDB server version v4.0.13

MongoDB架构:

服务器 server 1 server 2 server 3
副本集 副本集 副本集 端口 replSet
IP 192.168.45.130 192.168.45.131 192.168.45.132
分片1 shard1 shard1 shard1 27017 shard1
分片2 shrad2 shrad2 shrad2 27018 shrad2
分片3 shard3 shard3 shard3 27019 shard3
config con con con 27000 con
route mongos mongos mongos 20000

集群搭建:
一、分片搭建
1、新建文件夹存放数据,每个shard都创建如下文件夹
mkdir c:\mongodb\data\shard1\db
mkdir c:\mongodb\data\shard1\dblog

2、创建shard分片,每台服务器打开mongod服务

C:\MongoDB\Server\bin\mongod.exe --shardsvr --replSet shard1 --port 27017 --dbpath C:\MongoDB\data\shard1\db\ --logpath C:\MongoDB\data\shard1\dblog\shard1.log --logappend --bind_ip 192.168.45.130,127.0.0.1
C:\MongoDB\Server\bin\mongod.exe --shardsvr --replSet shard2 --port 27018 --dbpath C:\MongoDB\data\shard2\db\ --logpath C:\MongoDB\data\shard2\dblog\shard2.log --logappend --bind_ip 192.168.45.130,127.0.0.1
C:\MongoDB\Server\bin\mongod.exe --shardsvr --replSet shard3 --port 27019 --dbpath C:\MongoDB\data\shard3\db\ --logpath C:\MongoDB\data\shard3\dblog\shard3.log --logappend --bind_ip 192.168.45.130,127.0.0.1

shardsvr配合config 与mongos使用
replSet 定义副本集名称
port 端口
dbpath 数据存放路径
logpath 日志存放
bind_ip 服务器对外服务地址

check mongod 成功与否,运行查看所有shard

C:\MongoDB\Server\bin\mongo.exe --port 27017

3、端口27017进入,创建shard1副本集
进入不同端口激活shard1\shard2\shard3

C:\MongoDB\Server\bin\mongo.exe --port 27017
config = {_id:"shard1",members:[{_id:0,host:"192.168.45.130:27017"},{_id:1,host:"192.168.45.131:27017"},{_id:2,host:"192.168.45.132:27017"}]}
rs.initiate(config)

二、config\route搭建

1、每台服务器创建config文件夹,存放config信息
mkdir c:\mongodb\data\config

2、配置config srever 每台服务器运行以下命令

C:\MongoDB\Server\bin\mongod.exe --configsvr --dbpath C:\MongoDB\data\config\ --port 27000 --logpath C:\MongoDB\data\config\config.log --logappend --bind_ip 192.168.45.130,127.0.0.1 --replSet con

3、创建con副本集,运行以下命令

C:\MongoDB\Server\bin\mongo.exe --port 27000
config = {_id:"con",members:[{_id:0,host:"192.168.45.130:27000"},{_id:1,host:"192.168.45.131:27000"},{_id:2,host:"192.168.45.132:27000"}]}
rs.initiate(config)

4、创建route,每台服务器运行以下命令

C:\MongoDB\Server\bin\mongos --configdb con/192.168.45.130:27000,192.168.131:27000,192.168.45.132:27000 --port 20000 --logpath C:\MongoDB\data\route\mongos.log --logappend

三、分片集群
连接mongos服务器,分片加入到mongos

C:\MongoDB\Server\bin\mongo --port 20000
use admin
db.runCommand({addshard:'shard1/192.168.45.130:27017,192.168.45.131:27017,192.168.45.132:27017'})
db.runCommand({addshard:'shard2/192.168.45.130:27018,192.168.45.131:27018,192.168.45.132:27018'})
db.runCommand({addshard:'shard3/192.168.45.130:27019,192.168.45.131:27019,192.168.45.132:27019'})

创建分片功能,执行分片数据集

db.runCommand({enablesharding:'testdb'}) 
db.runCommand({shardcollection:'testdb.users',key:{_id:1}})

四、测试

猜你喜欢

转载自blog.csdn.net/rankiy/article/details/103732856