Skript ausführen, gegen Replikatgruppe in MongoDB

Ich habe Replik-set mit 3 Knoten und ich möchten, führen Sie eine Bereinigung Skript gegen Sie jedes Ende des Tages. Was ich tun würde, wenn es nur um einzelne Knoten wäre ein einfaches bash-Skript:

~/mongo/bin/mongo host:port cleanupScript.js

Aber da ich das gleiche Skript, gegen die replica-set-ich kann nicht mit diesem Ansatz. Ich müsste irgendwie herausfinden, welche Knoten primären und führen Sie das Skript an, dass die Knoten.

Also die Frage: gibt es eine Möglichkeit, wie Sie das Skript ausführen, gegen die gesamte Replikatgruppe und lassen Sie die mongo Prozess wählen Sie den primären Knoten und führen Sie es auf?

Dank!

  • Ich kenne keine Möglichkeit, dies zu tun, aber das ist ein großartiges feature Vorschlag 10gen für die mongo-javascript-shell. Der Java-Treiber, mindestens, können Sie den hosts in der replset als eine Sammlung: api.mongodb.org/java/2.9.0/com/mongodb/Mongo.html Mongo(java.util.Liste Samen, com.mongodb.MongoOptions Optionen) . Für diese Funktion allein, ich habe bis auf die javascript-shell für meine Wartung Aufgaben-und script-alles über Groovy mit Java-Treiber.
  • die shell unterstützt dies bereits, mindestens so weit zurück wie der 2.0 Zweig.
InformationsquelleAutor Jan Zyka | 2012-10-10
Schreibe einen Kommentar