【问题标题】:(OpenShift) Sharing MongoDB between Apps not possible anymore?(OpenShift)不再可能在应用程序之间共享 MongoDB?
【发布时间】:2015-03-30 21:05:47
【问题描述】:

OpenShift 本身有文章建议我可以使用 MongoDB 配置应用程序,然后在其他应用程序中设置 envvars 以访问该数据库

例如

How do you access a MongoDB database from two Openshift apps?

https://blog.openshift.com/sharing-database-across-applications/

问题是应用程序数据库的环境变量/主机名是“localhost”或点分四边形 (129.xxx.xxx.xxx),这显然不会(实际上没有 - 我试过了)如果在来自另一个应用程序的连接字符串中使用(在同一个 OpenShift“域”中)

这是 OpenShift 为阻止这种使用而做的事情吗?至少在“免费”层?? - 或者我错过了什么/有没有人有这个工作atm???

附言使用应用程序的实际连接字符串(例如 app-domain.rhcloud.com)不起作用(即使来自“内部托管”应用程序)

【问题讨论】:

    标签: mongodb openshift


    【解决方案1】:

    您需要将应用程序创建为可扩展的,然后添加 MongoDB 以使其正常工作。然后 MongoDB 将使用它自己的设备,使用它自己的 IP 地址和端口号(请记住使用此端口号,否则将无法正常工作)。

    由于防火墙和其他安全问题,如果不使用 rhc port-forward 命令 (https://developers.openshift.com/en/managing-port-forwarding.html),您将永远无法从 openshift 外部访问您的 mongodb 设备。

    但是,如果您使用扩展的应用程序方法,您将能够从其他 openshift 在线托管应用程序连接到您的 mongodb 实例。

    【讨论】:

    • 这在一定程度上是有道理的——唯一的缺点是我不想扩展这个应用程序的一部分是后端/数据库——可能需要数据库的多个读取器——多个写入器永远不会(他们所做的事情的性质不能并行完成)我想现在更好的方法是外部托管 - DBaaS - 像 MongoLab 这样的东西来保存数据 - 我相信我可以将它们设计到同一个亚马逊“区域”,因此尽量减少流量等。谢谢!
    猜你喜欢
    • 2019-05-10
    • 2012-10-18
    • 1970-01-01
    • 2020-06-08
    • 1970-01-01
    • 2015-07-24
    • 2011-03-30
    • 2019-04-05
    • 2011-03-23
    相关资源
    最近更新 更多