mongodb的集群配置

先在第一台计算机上在${MONGO_INSTALL}下分别执行:
bin/mongod -shardsvr -port 27017 -dbpath=/data/shard11/ -logpath=/data/shard11.log --fork
再在另一台机器上也分别执行:
bin/mongod -shardsvr -port 27017 -dbpath=/data/shard12/ -logpath=/data/shard12.log --for
在终端中分别执行检查Mongod进程是否成功启动:
1 ps -ef |grep mongod
如果任何一台没有启动成功,重复上面的,直到找出原因。
OK,现在我们成功的分别在2太计算机上启动了1个mongod实例,mongod是真正存储数据的进程。进群中还需要一个配置服务器,用来存储在各个节点中共享的配置信息,存储数据的元信息[METADATA]
config不会占用太多资源的。我们在其中任何一台上面启动Mono的Config,shell如:
#config也是存储少量数据的,不要忘了给它创建存储数据的文件夹
mkdir /data/config
bin/mongod -configsvr -dbpath=/data/config -port 20000 -logpath=/data/config.log --fork
也许你已经注意到,在2台shard的启动参数中加了-shardsvr,在配置实例中加了-configsvr。 mongo就是这样进行区分的。当然复制的配置应该是: -replSet setName。 setName就是复制集群的别名。
当以上都启动成功,我们可以开启mongos服务了。在任何一台机器上执行:
#mongos进程不需要dbpath,但是需要logpath
#mongos启动参数中,chunkSize这一项是用来指定chunk的大小的,单位是MB,默认大小为200MB
bin/mongos -configdb ip:20000 -port 30000 -chunkSize 512 -logpath=/data/mongos.log --fork
请注意上面的IP,这个IP应该是你启动config的那台机器ip和port。 
如果顺利的话,你也应该能轻松的启动mongos进程的。可以执行查看:ps -ef |grep mongos
现在就剩下配置了。让mongos进程知道哪些机器是需要加入到分片的。在任何一台机器上执行[mongosip为启动mongos服务的机器IP]:
bin/mongo ip:30000/admin
注意后边的admin,配置分片必须要链接admin集合。链接成功后你就可以把分片加入集群:
db.runCommand({"addshard":"192.168.1.23:27017"})
db.runCommand({"addshard":"192.168.1.22:27017"})
上边的两个ip都是第一次启动的shard的ip地址,不是config 。
如果顺利,你应该能看到{ ”ok“ : 1}的字样。这样你就成功的把两个shard加入了分片。现在你还需要制定分片的规则。
db.runCommand({"shardcollection":"dbname.tablename", "key":{"primaryKey":1}})
最后你还需要激活分片的设置。
db.runCommand({"enablesharding": "ndmongo"})
OK,走到最后你应该成功的配置了分片。
现在你需要在刚才指定dbname和tablename插入一定数量的数据。测试集群:
db.printShardingStatus()

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值