单Replication sets设计:
如图所示,10.9.3.228只启动Mongos和config两个服务
- ^_^[root@:/usr/local/mongodb/bin]#cat runServerConfig.sh
- ./mongod --configsvr --dbpath=../data/config --logpath=../data/config.log --fork
- ^_^[root@:/usr/local/mongodb/bin]#cat runServerMongos.sh
- ./mongos --configdb 10.7.3.228:27019 --logpath=../data/mongos.log --logappend --fork
注意:Mongos里面的ip和端口是config服务的ip和端口 先进性配置AutoSharding163的shardv已经启动了,只要启动下165服务器的autoSharding服务
- [root@localhost bin]# cat runServerShard.sh
- ./mongod --shardsvr -dbpath=../data/mongodb --logpath=../data/shardsvr_logs.txt --fork
配置163和164的Replication
- [root@localhost bin]# ./mongo 10.10.21.163:27018
- MongoDB shell version: 1.8.2
- connecting to: 10.10.21.163:27018/test
- > cfg={_id:"set163164",members:[
- ... {_id:0,host:"10.10.21.163:27018"},
- ... {_id:1,host:"10.10.21.164:27017"}
- ... ]}
- {
- "_id" : "set163164",
- "members" : [
- {
- "_id" : 0,
- "host" : "10.10.21.163:27018"
- },
- {
- "_id" : 1,
- "host" : "10.10.21.164:27017"
- }
- ]
- }
- > rs.initiate(cfg)
- {
- "info" : "Config now saved locally. Should come online in about a minute.",
- "ok" : 1
- }
- > rs.conf()
- {
- "_id" : "set163164",
- "version" : 1,
- "members" : [
- {
- "_id" : 0,
- "host" : "10.10.21.163:27018"
- },
- {
- "_id" : 1,
- "host" : "10.10.21.164:27017"
- }
- ]
- }
- set163164:PRIMARY>
- set163164:PRIMARY>
- set163164:PRIMARY> show dbs
- admin (empty)
- local 14.1962890625GB
- set163164:PRIMARY> use local
- switched to db local
- set163164:PRIMARY> show collections
- oplog.rs
- system.replset
- set163164:PRIMARY> db.system.replset.find()
- { "_id" : "set163164", "version" : 1, "members" : [
- {
- "_id" : 0,
- "host" : "10.10.21.163:27018"
- },
- {
- "_id" : 1,
- "host" : "10.10.21.164:27017"
- }
- ] }
- set163164:PRIMARY> rs.isMaster()
- {
- "setName" : "set163164",
- "ismaster" : true,
- "secondary" : false,
- "hosts" : [
- "10.10.21.163:27018",
- "10.10.21.164:27017"
- ],
- "maxBsonObjectSize" : 16777216,
- "ok" : 1
- }
至此Replication sets配置成功!再在228服务器上进行相应Sharding配置
use admin- > db.runCommand({addshard:"set163164/10.10.21.163:27018,10.10.21.165:27018"});
- { "shardAdded" : "set163164", "ok" : 1 }
- > db.runCommand({enableSharding:"test"})
- { "ok" : 1 }
- > db.runCommand({shardcollection:"test.users",key:{_id:1}})
- { "collectionsharded" : "test.users", "ok" : 1 }
然后分别在163和164服务器上启动rep服务,163要单独启动shard服务163:
- [root@localhost bin]# cat runServerShard.sh
- ./mongod --shardsvr --dbpath=../data/mongodb --logpath=../data/shardsvr_logs.txt --fork --replSet set163164
164:
- [root@localhost bin]# cat runServerShard.sh
- ./mongod --dbpath=../data --logpath=../data/shardsvr_logs.txt --fork --replSet set163164
至此AutoSharding+Rep配置成功。然后进行测试稳定性阶段。先看下结果:
可以看到,总共插入2000W条数据,163和164相同大小 165属于分片 数据。
MongoDB(自动分片+shard备份) 机器故障 (使用kill -9仿真) 稳定性测试MongoDB高级---->MongoDB 分布式自动分片(Auto-sharding)研究相关资讯 MongoDB
- MongoDB 3.3.0 发布下载 (01月14日)
- 使用MongoDB C#官方驱动操作 (12/31/2015 16:27:56)
- CentOS 6.6下安装MongoDB 3.0.1 (12/21/2015 19:29:02)
| - MongoDB 3.2版WiredTiger存储引擎 (01月02日)
- 进程监控工具Supervisor 启动 (12/26/2015 10:49:57)
- MongoDB 3.2.1 RC0 发布下载 (12/18/2015 11:32:29)
|
本文评论 查看全部评论 (0)