MongoDB
 sql >> Datenbank >  >> NoSQL >> MongoDB

Wie greifen Sie von zwei Openshift-Apps aus auf eine MongoDB-Datenbank zu?

Update 2018:Dies gilt für Openshift 2. Version 3 ist sehr unterschiedlich, und obwohl die allgemeinen Regeln von Linux und Skalierung gelten, sind die Details veraltet.

Obwohl die Antwort von @MartinB rechtzeitig und korrekt war, ist es nur ein Link, also lassen Sie mich das Wesentliche hier einfügen.

Angenommen, die Einrichtung einer nicht gemeinsam genutzten DB ist bereits abgeschlossen, müssen Sie deren Host und Port finden. Sie können ssh zu Ihrer App (die mit der DB) oder verwenden Sie den rhc :

rhc ssh -a appwithdb
env | grep MONGODB 

env bringt alle Umgebungsvariablen und grep filtert sie, um nur Mongo-bezogene anzuzeigen. Sie sollten etwas sehen wie:

OPENSHIFT_MONGODB_DB_HOST=xxxxx-yyyyy.apps.osecloud.com
OPENSHIFT_MONGODB_DB_PORT=zzzzz

xxxxx is the ID of the gear that Mongo sits on
yyyyy is your domain/namespace
zzzzz is MongoDB port

Jetzt können Sie diese verwenden, um von überall in Ihrer Openshift-Umgebung eine Verbindung zur DB herzustellen. Eine andere Anwendung muss die URL xxxxx-yyyyy:zzzzz verwenden. Sie können sie in benutzerdefinierten Variablen speichern, um die Wartung zu vereinfachen.

$ rhc env-set \
MYOWN_DB_HOST=xxxxx-yyyyy \
MYOWN_DB_PORT=zzzzz \
MYOWN_DB_PASSWORD=****** \
MYOWN_DB_USERNAME=admin..... \
MYOWN_DB_NAME=dbname...

Und verwenden Sie dann die Umgebungsvariablen anstelle der Standardvariablen. Denken Sie nur daran, dass sie nicht automatisch aktualisiert werden, wenn sich die DB entfernt.