Amazon web services AWS ELB和Nat网关不能很好地配合

Amazon web services AWS ELB和Nat网关不能很好地配合,amazon-web-services,amazon-ec2,amazon-dynamodb,amazon-elb,Amazon Web Services,Amazon Ec2,Amazon Dynamodb,Amazon Elb,我有一个基本的VPC,有两个运行Apache的Linux EC2实例,它们位于一个经典的ELB后面 我想从web应用程序使用DynamoDB,这要求EC2实例具有出站internet访问,因为DynamoDB端点不能通过后端访问 我使用ELB是为了避免将公共IP连接到EC2实例,所以我不希望连接它们只是为了能够访问DynamoDB 在这一点上,我被卡住了 我设置了新的NAT网关功能,以提供对DynamoDB公共端点的访问。这在配置时工作良好,这意味着web应用程序可以成功连接到DynamoDB端

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

我想从web应用程序使用DynamoDB,这要求EC2实例具有出站internet访问,因为DynamoDB端点不能通过后端访问

我使用ELB是为了避免将公共IP连接到EC2实例,所以我不希望连接它们只是为了能够访问DynamoDB

在这一点上,我被卡住了

我设置了新的
NAT网关
功能,以提供对DynamoDB公共端点的访问。这在配置时工作良好,这意味着web应用程序可以成功连接到DynamoDB端点,但它会中断通过ELB的传入流量

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

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

总之,我希望通过ELB提供对web服务器的外部访问,并且希望web服务器能够通过Nat网关访问DynamoDB端点。无需为web服务器实例分配公共接口

有人知道这是否可行吗?似乎是一个相当标准的设置。参考体系结构或教程会很好

非常感谢

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

一个公共子网通过
0.0.0.0/0
路由到Internet网关(当然还有VPC CIDR的本地路由),一个私有子网通过
0.0.0/0
路由到NAT实例的弹性接口(以及VPC CIDR的本地路由)

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

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

一个公共子网通过
0.0.0.0/0
路由到Internet网关(当然还有VPC CIDR的本地路由),一个私有子网通过
0.0.0/0
路由到NAT实例的弹性接口(以及VPC CIDR的本地路由)

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

好的,谢谢,将再次测试。我想我已经尝试过这个设置,ELB健康检查对ec2实例有效,但ELB的公共交通总是无法得到回复。也许我把ELB放错子网了。好的,谢谢,我会再次测试。我想我已经尝试过这个设置,ELB健康检查对ec2实例有效,但ELB的公共交通总是无法得到回复。也许我把ELB放错子网了。