Je kunt het mongo-cluster benaderen vanaf elk ander knooppunt, daarvoor moet je de poort weten waarop de config-server draait op knooppunt (computer) 1. De config-server kan worden gestart met het volgende commando. Idealiter zouden er 3 configuratieservers op een systeem moeten draaien, dus ik werk de stappen bij om daar rekening mee te houden.
<path-to-mongo>/bin/mongod --configsvr --port <port-1> --dbpath ./shardedcluster/cfg0 --fork
<path-to-mongo>/bin/mongod --configsvr --port <port-2> --dbpath ./shardedcluster/cfg1 --fork
<path-to-mongo>/bin/mongod --configsvr --port <port-3> --dbpath ./shardedcluster/cfg2 --fork
Probleem: Geen scherven gevonden. Eerder ging ik ervan uit dat er geen scherven nodig waren om dit soort systeem op te zetten. Om dit probleem op te lossen, kunt u echter een shard-server maken en deze als volgt initialiseren.
<path-to-mongo>/bin/mongod --shardsvr --replSet a --dbpath ./shardedcluster/a0 --port <shard-port> --fork --smallfiles --oplogSize 50
Volg de onderstaande stappen om de Shard te initialiseren.
<path-to-mongo>/bin/mongo --port <shard-port>
Voer vervolgens het commandors.initiate()
. uit
Ervan uitgaande dat u op Computer 2 het uitvoerbare bestand MongoDB hebt gekopieerd. Voer de volgende opdracht uit op computer 2
<path-to-mongodb>/bin/mongos --configdb <C1-IP>:<port-1>,<C1-IP>:<port-2>,<C1-IP>:<port-3> --port 27017
Voer vervolgens uit (op Computer-2),
<path-to-mongodb>/bin/mongo --port 27017
27017 is de standaardpoort, ik gebruik die optie alleen voor breedsprakigheid.
Opmerking 1 Als de shard-initialisatiefout aanhoudtVoer de volgende opdracht uit in de mongos-shell,
sh.addShard("a/<C1-IP>:<Shard-port>")
Opmerking 2 Zorg ervoor dat de directory shardedcluster/cfg0, shardedcluster/cfg1, shardedcluster/cfg2, shardedcluster/a bestaat en over de juiste schrijfrechten beschikt.
Volg de onderstaande link voor meer informatie.http://www.mongodbspain.com/en/2015/01/26/how-to-set-up-a-mongodb-sharded-cluster/
Ik heb je alleen de vereiste commando's eruit gegeven.