从 Elastic Beanstalk 连接到托管在 AWS ec2 上的 MongoDB

Posted

技术标签:

【中文标题】从 Elastic Beanstalk 连接到托管在 AWS ec2 上的 MongoDB【英文标题】:Connect to MongoDB hosted on AWS ec2 from Elastic Beanstalk 【发布时间】:2015-02-14 17:55:42 【问题描述】:

我正在尝试在 AWS 上托管我的网络应用程序。

我在 Elastic Beanstalk 上托管我的 nodejs 应用程序(可销售)。 我创建了一个 ec2 实例来托管我的 mongodb。

在测试中,mongodb ec2 实例接受来自任何地方的端口 27017 的连接。 我的网站运行良好。

问题是我想限制对 mongodb ec2 实例的访问,只允许来自我的 Elastic Beanstalk 应用程序的连接。

我更改了我的 ec2 实例安全组的规则,只接受来自 Elastic Beanstalk 应用程序分配到的安全组的 tcp 端口 27017 连接。

这会立即中断我的应用程序与 mongodb 的通信。

我也尝试过允许来自 beanstalk 安全组的所有流量,没有运气

我有什么问题吗?请帮忙!

【问题讨论】:

【参考方案1】:

需要编辑 /etc/mongod.conf 文件并设置您的 bind_ip = 0.0.0.0 以建立外部连接。

还必须尝试不同版本的面具才能工作。 xxx.xxx.0.0/16 对我有用,但 xxx.xxx.0.0/24 和 xxx.xxx.0.0/32 没有。

此外,如果您在同一个区域(降低成本),他们建议您使用私有 IP,否则使用公共 IP。

【讨论】:

以上是关于从 Elastic Beanstalk 连接到托管在 AWS ec2 上的 MongoDB的主要内容,如果未能解决你的问题,请参考以下文章

无法从 Elastic Beanstalk Docker 连接到 RDS

有没有办法配置 Elastic Beanstalk 以连接到现有的 Oracle 数据库(没有 BYOL)?

无法从 Elastic Beanstalk 连接到 Amazon SimpleDB

无法通过 Python Elastic Beanstalk 中的 Flask SQLAlchemy URI 连接到 AWS MySQL RDS 实例

当我将 Spring Boot 应用程序部署到 AWS Elastic Beanstalk 并且无法从本地 Spring Boot 连接到 RDS 时出现 502 错误网关

无法连接到 Elastic Beanstalk 上的 ActionCable