配置MongoDB Sharding

来源:互联网 发布:milogs工作日志软件 编辑:程序博客网 时间:2024/05/19 14:52
1) 启动副本集三个shard,每个shard三个副本,三台机器(170/171/172),每台机器分别对应三个shard中的一个副本#170mongod --shardsvr --replSet shard-a --dbpath /mongo-data/rs-170-a --port 30000 --logpath /mongo-data/rs-170-a.log --fork --nojournalmongod --shardsvr --replSet shard-b --dbpath /mongo-data/rs-170-b --port 30001 --logpath /mongo-data/rs-170-b.log --fork --nojournalmongod --shardsvr --replSet shard-c --dbpath /mongo-data/rs-170-c --port 30002 --logpath /mongo-data/rs-170-c.log --fork --nojournal#171mongod --shardsvr --replSet shard-a --dbpath /mongo-data/rs-171-a --port 30000 --logpath /mongo-data/rs-171-a.log --fork --nojournalmongod --shardsvr --replSet shard-b --dbpath /mongo-data/rs-171-b --port 30001 --logpath /mongo-data/rs-171-b.log --fork --nojournalmongod --shardsvr --replSet shard-c --dbpath /mongo-data/rs-171-c --port 30002 --logpath /mongo-data/rs-171-c.log --fork --nojournal#172mongod --shardsvr --replSet shard-a --dbpath /mongo-data/rs-172-a --port 30000 --logpath /mongo-data/rs-172-a.log --fork --nojournalmongod --shardsvr --replSet shard-b --dbpath /mongo-data/rs-172-b --port 30001 --logpath /mongo-data/rs-172-b.log --fork --nojournalmongod --shardsvr --replSet shard-c --dbpath /mongo-data/rs-172-c --port 30002 --logpath /mongo-data/rs-172-c.log --fork --nojournal#初始化三个shard的副本集mongo --host 192.168.1.170 --port 30000 > rs.initiate()> rs.add("192.168.1.170:30000")> rs.add("192.168.1.171:30000")> rs.add("192.168.1.172:30000")mongo --host 192.168.1.170 --port 30001 > rs.initiate()> rs.add("192.168.1.170:30001")> rs.add("192.168.1.171:30001")> rs.add("192.168.1.172:30001")mongo --host 192.168.1.170 --port 30002 > rs.initiate()> rs.add("192.168.1.170:30002")> rs.add("192.168.1.171:30002")> rs.add("192.168.1.172:30002")2)config server(副本集为conf)#170mongod --configsvr --dbpath /mongo-data/config-master --port 27019 --logpath /mongo-data/config-master.log --fork --replSet conf#171mongod --configsvr --dbpath /mongo-data/config-master --port 27019 --logpath /mongo-data/config-master.log --fork --replSet conf#172mongod --configsvr --dbpath /mongo-data/config-master --port 27019 --logpath /mongo-data/config-master.log --fork --replSet conf#在其总一个上执行,rs.initiate()rs.add("192.168.1.170:27019")rs.add("192.168.1.171:27019")rs.add("192.168.1.172:27019")3)mongos(副本集为conf)mongos --configdb conf/192.168.1.170:27019,192.168.1.171:27019,192.168.1.172:27019 --logpath /mongo-data/mongos.log --fork --port 40000mongo连接到mongossh.addShard("shard-a/master.hadoop:30000,192.168.1.171:30000,192.168.1.172:30000")sh.addShard("shard-b/master.hadoop:30001,192.168.1.171:30001,192.168.1.172:30001")sh.addShard("shard-c/master.hadoop:30002,192.168.1.171:30002,192.168.1.172:30002")4)激活sharding(通过mongos)use admindb.runCommand( { enableSharding: "db" } )#创建shardingdb.runCommand({    shardCollection: "db.message",    key: {_id: 1},    unique: true } )

原创粉丝点击