Mise à jour 2018 :cela s'applique à Openshift 2. La version 3 est très différente, et cependant les règles générales de linux et de mise à l'échelle s'appliquent, les détails sont devenus obsolètes.
Bien que la réponse de @MartinB ait été correcte et opportune, ce n'est qu'un lien, alors laissez-moi mettre l'essentiel ici.
En supposant que la configuration d'une base de données non partagée est déjà effectuée, vous devez trouver son hôte et son port. Vous pouvez ssh
à votre application (celle avec la DB) ou utilisez le rhc
:
rhc ssh -a appwithdb
env | grep MONGODB
env
apporte toutes les variables d'environnement et grep les filtre pour n'afficher que celles liées à Mongo. Vous devriez voir quelque chose comme :
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
Désormais, vous pouvez les utiliser pour créer une connexion à la base de données depuis n'importe où dans votre environnement Openshift. Une autre application doit utiliser l'URL xxxxx-yyyyy:zzzzz. Vous pouvez les stocker dans des variables personnalisées pour faciliter la maintenance.
$ rhc env-set \
MYOWN_DB_HOST=xxxxx-yyyyy \
MYOWN_DB_PORT=zzzzz \
MYOWN_DB_PASSWORD=****** \
MYOWN_DB_USERNAME=admin..... \
MYOWN_DB_NAME=dbname...
Et puis utilisez les variables d'environnement au lieu des variables standard. N'oubliez pas qu'ils ne sont pas mis à jour automatiquement lorsque la base de données s'éloigne.