AWS + Elastic Beanstalk + MongoDB

3
我正在尝试使用AWS Elastic Beanstalk和Docker设置我的微服务架构。这很容易做到,但是当我启动环境时,它会启动到默认的VPC中,从而为实例提供公共IP。现在,这不太重要。
我遇到的问题是如何设置MongoDB架构。我已经阅读了在弹性豆角上安装mongodb的推荐方法,但仍然不确定如何设置。到目前为止,我尝试过:
  • 使用AWS这里的CloudFormation模板:http://docs.aws.amazon.com/quickstart/latest/mongodb/step2b.html,将一个带有两个副本节点的主节点部署到默认VPC中,但这会给Mongo节点分配公共访问。我也不确定如何连接我的应用程序,因为这不会添加NAT实例 - 我只需直接连接到主节点吗?如果此节点出现故障,副本节点的IP地址是否会变成与主节点相同,以使所有连接保持一致?还是我需要添加自己的NAT实例?
  • 我还尝试将MongoDB部署到其自己的VPC中(https://docs.aws.amazon.com/quickstart/latest/mongodb/step2a.html),并通过NAT提供访问权限,但这意味着有两个不同的VPC(一个用于我的EB实例,一个用于MongoDB)。在这种情况下,我是否应该从我的EB VPC连接到NAT以便将请求路由到数据库?
  • 我还尝试首先为MongoDB架构启动一个新的VPC,然后尝试将EB部署到此VPC中。由于某种原因,负载均衡设置不允许我添加到子网中,给出了错误:“不支持自定义可用区选项的VPC环境”。
我正在尝试在us-west-1启动所有内容。现在已经过去两天了,我不知道该去哪里或者解决这个问题的正确方法是什么。我希望数据库是私有的(没有公共访问),并带有NAT网关,因此理想情况下我的第三种方法似乎是我想要的,但我似乎无法将新创建的EB实例/负载均衡器添加到新创建的MongoDB VPC中。这是我正在寻找的设置:http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/images/default-vpc-diagram.png 但我正在尝试使用模板来完成这个任务。
我在这里做错了什么?任何帮助都将不胜感激。我已经阅读了很多相关资料,但仍然不确定该从哪里开始。
非常感谢您的帮助!
1个回答

1
我遇到了相同的问题。似乎没有关于如何连接 Elastic Beanstalk 的 node.js / express 应用程序与 aws Quickstart mongodb 集群设置文档的完整记录。 当我运行 aws mongo 快速入门时,它会启动一个 NAT,它是公共的,还有一个私有的主节点...也许这是你问题的一部分?

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接