-1

我最近在笔记本电脑上创建了一个 Mule 应用程序(3.7.0 CE)。在使用 Maven 在 AnyPoint Studio 中本地运行时,我已连接到 AWS RDS 实例。我从本地 MySQL DB 开始并将其迁移到 AWS,因为我的应用程序“proofofconcept”只是一个概念证明,我想在线显示应用程序(公共 url)而不是我的笔记本电脑进行演示。当我部署到云中的 Anypoint Runtime Manager 时,我将 database.url=... 属性添加到了应用程序属性中。我目前得到一个:

communications link failure

我已经尝试了几件事,但没有任何效果。我首先在数据库配置中尝试了基本的数据库连接。然后,我在 Spring-beans 中创建了一个 JDBC 数据源。这两种方法都在本地工作并与 AWS(远程)进行通信。当我部署到运行时管理器时,应用程序会部署。而且,我得到了由 RAML 生成的运行时控制台。当我调用一个 url 例如 api/v1/orders 它运行并运行,超时后提供通信错误。

有谁 1) 知道是否允许通信?2)知道如何解决这个问题?我想为我的客户在线演示 POC。

提前致谢

4

1 回答 1

1

我的问题在于 Amazon VPC 和分配给我的 RDS 实例的默认安全组。默认情况下,所有出站活动都设置为任何协议和任何 ip (0.0.0.0/0) 的任何端口。然而,入站路由只指定了端口 3306,还指定了一个自定义 using-ip,它是我的家庭网络公共 ip。我将 ip 规范更改为 0.0.0.0/0。现在这意味着任何 ip 都可以通过端口 3306 向我的 Amazon MySQL 实例发送请求。

于 2016-06-22T06:27:46.383 回答