2016-06-20 24 views
-1

Ich versuche ein Sharding in Mongo zu betreiben. Ich lief diese Befehle:Sharding Mongo Überrascht zu entdecken

mongod --rest --shardsvr --port 10000 --dbpath data/localhost10000 --logpath data/localhost10000/log 


mongod --rest --port 10002 --dbpath data/localhost10002 --logpath data/localhost10002/log 

mongos --port 10003 --configdb localhost:10002 > run_routing_service_log 



mongo localhost:10003 

use admin 
db.runCommand({addshard:"localhost:10000", name:"shard10000"}); 
db.runCommand({addshard:"localhost:10001", name:"shard10001"}); 


use test_sharding 
sh.enableSharding("test_sharding") 
db.people.ensureIndex({"zip": 1}) 
db.people.insert({"name": "a1", "password": "a1", ....) 

sh.status() 

Ich bin diesen Fehler erhalten:

überrascht, dass localhost zu entdecken: 10002 glaubt nicht, es ist ein config server

Antwort

0

hinzufügen --configsvr Argument in der zweiten mongod ist Befehl wie unten.

mongod --rest --port 10002 --dbpath data/localhost10002 --logpath data/localhost10002/log

Dies sollte die configserver auf Port # 10002 beginnen. Sie könnten jedoch mit einem anderen Problem in Bezug auf das Quorum konfrontiert werden, da 3 Konfig-Server von der offiziellen Dokumentation von mongodb empfohlen werden, die als der obige Befehl an verschiedenen Ports gestartet werden kann.

Auch sehe ich nicht, dass Sie den mongodb Shard initialisiert haben. Dies kann auch ein Problem beim Erkennen korrekter Shard-Konfigurationen verursachen. Der folgende Link könnte hilfreich sein.

http://www.mongodbspain.com/en/2015/01/26/how-to-set-up-a-mongodb-sharded-cluster/