fab*_*ian 5 mongodb openshift openshift-3
如何从本地Mac 通过https://mongobooster.com/连接到Openshift 3 MongoDB ?吊舱中的凭据不起作用。
Pod: nodejs-mongo-persistent-1-rt6ch
Connected to MongoDB at: mongodb://userLorem:ABC123SomePassword@172.123.123.123:27017/sampledb
Run Code Online (Sandbox Code Playgroud)
只是充实Graham的答案,以防可能有所帮助(尽管我并不是一个权威)。
这对我来说在Robo 3T(以前称为RoboMongo)中有效-这是MongoDB管理的GUI。
结果是我可以使用GUI在OpenShift上与MongoDB实例进行远程交互。
健全性/数据检查和环境熟悉
假设您在OpenShift上运行了MongoDB,要获取相关数据,请转到:
Your Project> Resources> Secrets> mongodb>[ click reveal secret ]
如果尚未将这些值复制到安全的地方,请执行以下操作:
数据库管理员密码:*****
数据库名称:sampledb
数据库密码:*****
数据库用户:*****
假设您已安装OpenShift CLI工具,则可以执行以下操作来熟悉项目环境:
oc get pods
Run Code Online (Sandbox Code Playgroud)
将返回类似:
NAME READY STATUS RESTARTS AGE
mongodb-1-XXXX5 1/1 Running 0 12h
my-node-app-10-build 0/1 Completed 0 10h
my-node-app-2-build 0/1 Init:Error 0 11h
my-node-app-8-cg2v2 1/1 Running 0 10h
my-node-app-9-build 0/1 Completed 0 10h
Run Code Online (Sandbox Code Playgroud)
然后,您可以rsh使用以下命令进入mongo pod(替换为实际的mongodb pod名称):
oc rsh mongodb-1-XXXX5
Run Code Online (Sandbox Code Playgroud)
然后使用以下命令运行mongo shell(使用您之前从控制台获得的值):
// don't do this...
// normal user name, normal user password (won't allow you to run 'show dbs')
// mongo -u "database-user" -p "database-password" sampledb
// do this...
// admin user, admin user password (this lets you run 'show dbs' etc)
mongo -u "admin" -p "database-admin-password" admin
Run Code Online (Sandbox Code Playgroud)
设置端口转发
上面的步骤使我对所使用的内容更加熟悉,然后可以研究端口转发:
https://learn.openshift.com/introduction/port-forwarding
有关在OpenShift上远程访问MongoDB的相关部分在第四步中:
要在本地计算机和OpenShift上运行的数据库之间设置端口转发,请使用oc port-forward命令。您需要传递容器的名称和数据库服务正在使用的端口的详细信息,以及要使用的本地端口。
该命令的格式为:
oc port-forward <pod-name> <local-port>:<remote-port>
就我而言,我这样做:
oc port-forward mongodb-1-XXXX5 34000:27017
Run Code Online (Sandbox Code Playgroud)
因此,这意味着:
客户端在本地侦听端口34000,并转发到Pod中的27017。
请参阅:https: //docs.openshift.com/online/dev_guide/port_forwarding.html
远程GUI设置
然后定义的设置Robo 3T是:
类型:直接连接
名称:OpenShift MongoDB实例
地址:本地主机:34000
然后在“身份验证”标签上...
执行身份验证:已选中
数据库:admin
用户名:admin
密码:[您的数据库管理员密码]
验证机制:
SCRAM-SHA-1