就让我
她不在这里,她无处追寻,可她在我心里 -- 挥之不去
mongo健壮集群搭建,分片sharding加复制集replica

mongo健壮集群搭建,分片sharding加复制集replica,使用备份,加分片,增强存储系统的健壮性。

1个配置服务

1个路由服务

2个分片,每个分片为一个3个服务的复制集

总共8个mongo服务,搭建如下:

1个配置服务

./bin/mongod --dbpath data/config/ --logpath log/config.log --logappend --fork --port 10000

1个路由服务

./bin/mongos --port 20000 --configdb 192.168.1.1:10000 --logpath log/mongos.log  --logappend --fork

分片一

./bin/mongod --replSet shard1 --dbpath data/shard10001 --logpath log/shard10001.log --logappend --fork --port 10001

./bin/mongod --replSet shard1 --dbpath data/shard10002 --logpath log/shard10002.log --logappend --fork --port 10002

./bin/mongod --replSet shard1 --dbpath data/shard10003 --logpath log/shard10003.log --logappend --fork --port 10003

建立复制集:

rsconf = {_id: "shard1", members: [ { _id: 0, host: "192.168.1.1:10001" } ] }

rs.initiate( rsconf )

rs.add("192.168.1.1:10002")

rs.add("192.168.1.1:10003")

分片二

./bin/mongod --replSet shard2 --dbpath data/shard20001 --logpath log/shard20001.log --logappend --fork --port 20001

./bin/mongod --replSet shard2 --dbpath data/shard20002 --logpath log/shard20002.log --logappend --fork --port 20002

./bin/mongod --replSet shard2 --dbpath data/shard20003 --logpath log/shard20003.log --logappend --fork --port 20003

建立复制集:

rsconf = {_id: "shard2", members: [ { _id: 0, host: "192.168.1.1:20001" } ] }

rs.initiate( rsconf )

rs.add("192.168.1.1:20002")

rs.add("192.168.1.1:20003")

连接到mongs,并切换到admin这里必须连接路由节点

添加分片:

db.runCommand({"addShard":"shard1/192.168.1.1:10001"})

db.runCommand({"addShard":"shard2/192.168.1.1:20001"})

db.runCommand({"addShard":"shard2/192.168.1.1:30001"})

db.runCommand({listshards:1})

激活分片:

db.runCommand({"enablesharding":"test"})

//要使单个collection也分片存储,需要给collection指定一个分片key,通过以下命令操作:
db.runCommand({"shardcollection":"test.user","key":{"_id":1}})
<< 上一篇 mongo分片搭建Sharding php使用mongo存储图片,gridfs 下一篇 >>
文章标签
随意 | Created At 2014 By William Clinton | 蜀ICP备14002619号-4 |