2014/6/26 @MongoDBシャーディング成功(127.0.0.1を使用)on VM1台 AMongoDBシャーディング成功(10.102.10.67を使用)on VM1台 mkdir -p /data/data27018 /data/data27019 /data/data27020 mongod --dbpath=/data/data27018 --replSet=ReplicaSet001 --port=27018 --fork --logpath /var/log/mongod27018.log --shardsvr --smallfiles mongod --dbpath=/data/data27019 --replSet=ReplicaSet001 --port=27019 --fork --logpath /var/log/mongod27019.log --shardsvr --smallfiles mongod --dbpath=/data/data27020 --replSet=ReplicaSet001 --port=27020 --fork --logpath /var/log/mongod27020.log --shardsvr --smallfiles mkdir -p /data/data27021 /data/data27022 /data/data27023 mongod --dbpath=/data/data27021 --replSet=ReplicaSet002 --port=27021 --fork --logpath /var/log/mongod27021.log --shardsvr --smallfiles mongod --dbpath=/data/data27022 --replSet=ReplicaSet002 --port=27022 --fork --logpath /var/log/mongod27022.log --shardsvr --smallfiles mongod --dbpath=/data/data27023 --replSet=ReplicaSet002 --port=27023 --fork --logpath /var/log/mongod27023.log --shardsvr --smallfiles mkdir -p /data/data29018 /data/data29019 /data/data29020 mongod --dbpath=/data/data29018 --port=29018 --fork --logpath /var/log/mongod29018.log --configsvr mongod --dbpath=/data/data29019 --port=29019 --fork --logpath /var/log/mongod29019.log --configsvr mongod --dbpath=/data/data29020 --port=29020 --fork --logpath /var/log/mongod29020.log --configsvr いったんこれを使わずに mongos --port=37017 --fork --logpath /var/log/mongos37017.log --configdb 10.102.10.167:29018,10.102.10.167:29019,10.102.10.167:29020 ↓ mongos --port=37017 --fork --logpath /var/log/mongos37017.log --configdb 127.0.0.1:29018,127.0.0.1:29019,127.0.0.1:29020 # mongo --port=27018 var config = { "_id" : "ReplicaSet001", "version" : 1, "members" : [ { "_id" : 0, host : "127.0.0.1:27018" }, { "_id" : 1, host : "127.0.0.1:27019" }, { "_id" : 2, host : "127.0.0.1:27020" } ] } ↓ var config = { "_id" : "ReplicaSet001", "version" : 1, "members" : [ { "_id" : 0, host : "10.102.10.167:27018" }, { "_id" : 1, host : "10.102.10.167:27019" }, { "_id" : 2, host : "10.102.10.167:27020" } ] } rs.initiate(config) rs.status() # mongo --port=27021 var config = { "_id" : "ReplicaSet002", "version" : 1, "members" : [ { "_id" : 0, host : "127.0.0.1:27021" }, { "_id" : 1, host : "127.0.0.1:27022" }, { "_id" : 2, host : "127.0.0.1:27023" } ] } ↓ var config = { "_id" : "ReplicaSet002", "version" : 1, "members" : [ { "_id" : 0, host : "10.102.10.167:27021" }, { "_id" : 1, host : "10.102.10.167:27022" }, { "_id" : 2, host : "10.102.10.167:27023" } ] } rs.initiate(config) rs.status() # mongo --port=37017 > use admin db.runCommand({addshard:"ReplicaSet001/127.0.0.1:27018,127.0.0.1:27019,127.0.0.1:27020",name:"Shard001",allowLocal:true}); db.runCommand({addshard:"ReplicaSet002/127.0.0.1:27021,127.0.0.1:27022,127.0.0.1:27022",name:"Shard002",allowLocal:true}); ---------------------------------------------------------------------- > db.runCommand({addshard:"ReplicaSet001/10.102.10.167:27018,10.102.10.167:27019,10.102.10.167:27020",name:"Shard001",allowLocal:true}); > db.runCommand({addshard:"ReplicaSet002/10.102.10.167:27021,10.102.10.167:27022,10.102.10.167:27023",name:"Shard002",allowLocal:true}); > printShardingStatus(); 結果 --- Sharding Status --- sharding version: { "_id" : 1, "version" : 3, "minCompatibleVersion" : 3, "currentVersion" : 4, "clusterId" : ObjectId("53ac230d35d7f8ffa8cc5aff") } shards: { "_id" : "Shard001", "host" : "ReplicaSet001/127.0.0.1:27018,127.0.0.1:27019,127.0.0.1:27020" } { "_id" : "Shard002", "host" : "ReplicaSet002/127.0.0.1:27021,127.0.0.1:27022,127.0.0.1:27023" } databases: { "_id" : "admin", "partitioned" : false, "primary" : "config" } ◎シャード有効化 mongos> db.runCommand({enablesharding:"wdpress"}); mongos> db.runCommand({shardcollection:"wdpress.user",key:{"_id":1}}); 結果 mongos> printShardingStatus(); --- Sharding Status --- sharding version: { "_id" : 1, "version" : 3, "minCompatibleVersion" : 3, "currentVersion" : 4, "clusterId" : ObjectId("53ac230d35d7f8ffa8cc5aff") } shards: { "_id" : "Shard001", "host" : "ReplicaSet001/127.0.0.1:27018,127.0.0.1:27019,127.0.0.1:27020" } { "_id" : "Shard002", "host" : "ReplicaSet002/127.0.0.1:27021,127.0.0.1:27022,127.0.0.1:27023" } databases: { "_id" : "admin", "partitioned" : false, "primary" : "config" } { "_id" : "wdpress", "partitioned" : true, "primary" : "Shard001" } wdpress.user shard key: { "_id" : 1 } chunks: Shard001 1 { "_id" : { "$minKey" : 1 } } -->> { "_id" : { "$maxKey" : 1 } } on : Shard001 Timestamp(1, 0)