OpenShift Java应用程序与外部Amazon RDS数据库的连接

时间:2016-02-14 22:09:24

标签: java amazon-web-services openshift

Amazon RDS数据库要求我提供应该允许进行连接的任何计算机的IP地址。在我的本地Apache Tomcat开发服务器中,我的Java应用程序能够连接到我的Amazon RDS数据库,我必须提供计算机的IP地址才能允许此连接。

快速将我的应用程序部署到OpenShift。我的应用程序已成功部署,我可以进入登录页面。我在应用程序上创建了一个测试页面,用于输出运行我的应用程序的OpenShift服务器IP地址。我将这个IP地址添加到Amazon RDS上的安全协议,就像我为本地计算机所做的那样。但是,Openshift上部署的应用程序仍未成功连接到我的Amazon RDS数据库。

我正在使用免费的OpenShift帐户。我想知道免费帐户版本是否不允许外部数据库连接?或者,我没有捕获存储应用程序的OpenShift服务器的正确IP地址吗?

1 个答案:

答案 0 :(得分:0)

一般情况下,您可以进行实验:

  • 在您的应用程序中创建一个小函数 - 在您可以控制的另一台服务器上获取一些URL,即您可以读取其access.log并接受来自任何IP的连接。
  • 然后运行此功能(通过访问测试页面,使用远程shell或通过安排cron作业)。
  • 并查看access.log。

因此,您将确定IP地址(如果它被某种代理更改)。 如果没有记录任何内容,则似乎外部连接被阻止。

您需要确定openstack Web代理的IP地址。 请参阅https://developers.openshift.com/en/managing-port-binding-routing.html

处的Web代理和端口8000,8443

如果有很多此类IP,您可以创建SSH隧道并转发一个端口,因此您与数据库的连接将是本地的。