gpt4 book ai didi

mongodb - 从远程连接到 openshift 3 mongodb?

转载 作者:可可西里 更新时间:2023-11-01 09:10:31 25 4
gpt4 key购买 nike

如何使用 https://mongobooster.com/ 连接到我的 Openshift 3 MongoDB从我本地的 mac?来自 Pod 的凭据不起作用。

Pod:nodejs-mongo-persistent-1-rt6ch

Connected to MongoDB at: mongodb://userLorem:ABC123SomePassword@172.123.123.123:27017/sampledb

最佳答案

只是充实 Graham 的回答以防它可能有帮助(尽管我不是那么权威)。

这对我有用 Robo 3T (正式名称为 RoboMongo)- 用于 MongoDB 管理的 GUI。

结果是我可以使用 GUI 与 OpenShift 上的 MongoDB 实例进行远程交互。

理智/数据检查和环境熟悉

假设您在 OpenShift 上运行 MongoDB,要获取相关数据,请访问:

Your Project > Resources > Secrets > mongodb > [ click reveal secret ]

如果您还没有将这些值复制到安全的地方:

database-admin-password: *****

database-name: sampledb

database-password: *****

database-user: *****

假设您有 OpenShift CLI安装工具,然后您可以执行以下操作以熟悉您的项目环境:

oc get pods

将返回如下内容:

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

然后您可以 rsh使用以下内容进入您的 mongo pod(替换为您实际的 mongodb pod 名称):

oc rsh mongodb-1-XXXX5

然后使用以下命令运行 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

设置端口转发

以上步骤让我对自己的工作更加熟悉,然后我可以研究端口转发:

https://learn.openshift.com/introduction/port-forwarding

关于在 OpenShift 上远程访问 MongoDB 的相关部分在第四步:

To setup port forwarding between a local machine and the database running on OpenShift you use the oc port-forward command. You need to pass the name of the pod and details of the port the database service is using, as well as the local port to use.

The format for the command is:

oc port-forward <pod-name> <local-port>:<remote-port>

就我而言,我是这样做的:

oc port-forward mongodb-1-XXXX5 34000:27017

这意味着:

The client listens on port 34000 locally and forwards to 27017 in the pod.

参见:https://docs.openshift.com/online/dev_guide/port_forwarding.html

远程 GUI 设置

然后我在 Robo 3T 中定义的设置是:

Type: Direct Connection

Name: OpenShift MongoDB Instance

Address: localhost : 34000

And on Authentication tab...

Perform authentication: checked

Database: admin

Username: admin

Password: [ your database-admin-password ]

Auth Mechanism:

SCRAM-SHA-1

关于mongodb - 从远程连接到 openshift 3 mongodb?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46501796/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com