当前位置: 首页 > 知识库问答 >
问题:

AWS ELB和Nat网关不能很好地协同工作

房学文
2023-03-14

我有一个基本的 VPC,其中包含两个运行 Apache 的 Linux EC2 实例,它们位于经典 ELB 后面。

我想从web应用程序中使用DynamoDB,这要求EC2实例具有出站互联网访问,因为DynamoDBendpoint无法通过后端获得。

我正在使用 ELB 来避免将公有 IP 附加到 EC2 实例,因此我宁愿不附加它们,以便可以访问 DynamoDB。

在这一点上,我被卡住了。

我设置了新的NAT网关功能,以提供对DynamoDB公共endpoint的访问。如果进行了配置,这意味着web应用程序可以成功连接到DynamoDBendpoint,但它会通过ELB中断传入的通信量,则此功能很好。

配置 Nat 网关后,EC2 实例子网的默认网关为 Nat 网关。

ELB要求有一个Internet网关,以便路由工作……所以这是一个难题,我不知道如何解决。

总而言之,我希望通过ELB提供对web服务器的外部访问,并且我希望web服务器能够通过Nat网关访问DynamoDBendpoint。而不必为web服务器实例分配公共接口

有人知道这个能不能用吗?似乎是很标准的设置。参考架构或教程将是伟大的。

非常感谢

共有1个答案

解浩渺
2023-03-14

此设置需要(至少)两个子网:

一个公共子网通过< code>0.0.0.0/0路由到互联网网关(当然还有VPC CIDR的本地路由),一个私有子网通过< code>0.0.0.0/0路由到NAT实例的弹性接口(还有VPC CIDR的本地路由)。

将NAT实例和ELB放在公用子网中,并将服务器放在专用子网中。

 类似资料:
  • 我正在创建一个用户界面,允许用户通过拖放界面创建数据库表(及其字段和关系)。 这是我创建的jsFiddle,尽管它看起来有很多事情要做,但实际上它只是演示问题所需的最低限度。以下是我的要求,jsPlumb很好地单独处理了这些要求,但是当我试图把它们放在一起时,我会遇到问题。特别是,它将#2和#3结合在一起是一个问题。 表格可以在画布上拖动(使用jsPlumb.draggable()) 表中的字段可

  • NAT网关能够为公有云VPC网络中虚拟机提供IP地址转换功能,使虚拟机可以访问外网或提供互联网服务。 NAT网关能够为公有云VPC网络中虚拟机提供IP地址转换功能,使虚拟机可以共享弹性公网IP访问Internet或使虚拟机提供互联网服务。目前支持纳管阿里云和华为云平台的NAT网关。 NAT网关提供SNAT(Source Network Address Translation,源网络地址转换)、DN

  • 问题内容: 我想在Linux命令行上回显查找的文件名部分。我尝试使用以下内容: 和 以及转义和引用文本各个部分的其他组合。结果是该路径未被剥离: 为什么不? 更新:尽管我在下面有一个可行的解决方案,但我仍然对为什么“基本名称”没有执行应做的事情感兴趣。 问题答案: 您最初尝试的麻烦: 是代码在执行命令之前执行一次。单曲的输出是因为它是文件名的基本名称。因此,由find执行的命令是: 为找到的每个文

  • 什么会导致方法停止工作? 最后一页总是与第一页相反的顺序,怎么会呢?

  • 您可以看到Android Studio预览经常更新。如果你不想处理各种各样的bug,你最好使用一个稳定的版本。 如果你想使用更多的功能,你应该总是保持最新的版本,以避免错误。

  • 问题内容: 我浏览了一些帖子,并且阅读了多个JPA不支持接口的地方。有人可以分享真实项目中的含义吗?这是否意味着我们无法为接口添加注释? 问题答案: 这意味着您不能在接口上进行映射(注释)或查询。您只能查询@Entity类,并且只能将它们放在真实类中,而不能放在接口上。通常这不是问题,接口没有状态,因此在大多数情况下与持久性没有真正关系。您仍然可以在模型中使用接口,只是不能直接映射它们。 如果您有