gpt4 book ai didi

amazon-web-services - AWS VPC : Strange Behaviour when using NAT and Internet Gateway with Load Balancer and Private Subnets

转载 作者:行者123 更新时间:2023-12-03 07:46:18 26 4
gpt4 key购买 nike

考虑以下基于 this document 的设置:

  • 具有四个子网的 AWS VPC。一个公共(public)和三个私有(private)(每个可用区一个)
  • VPC 连接有互联网网关。
  • 公有子网 (10.0.1.0/24) 具有弹性负载均衡器 (V2)、NAT 网关和用于通过 SSH 连接到环境的堡垒服务器。该子网的路由表定义为:
    10.0.0.0/16 -> 本地
    0.0.0.0/0 -> igw-67e14203(互联网网关)
  • 三个私有(private)子网(位于每个可用区中)附加了以下路由表:
    10.0.0.0/16 -> 本地
    0.0.0.0/0 -> igw-67e14203

通过上述设置,负载均衡器可以完美运行,我可以从公共(public)互联网访问 Web 服务器 URL 和应用程序。但是,通过此设置,私有(private)子网 (10.0.2.0/24、10.0.3.0/24、10.0.4.0/24) 中的服务器无法访问本地网络之外的任何内容,甚至无法访问 AWS yum 存储库。当我将私有(private)子网的路由表更改为:
10.0.0.0/16 -> 本地
0.0.0.0/0 -> nat-0a71345c417d7758a

  • 如果我查看“目标组”下的运行状况检查,它会显示所有三个私有(private)子网中的所有实例都运行状况良好。
  • 除非我遗漏了一些东西,如文档 referenced above 所示,负载均衡器实际上可以连接到私有(private)子网。

ELB的配置如下:

"AppServerLoadBalancer": {
"Type": "AWS::ElasticLoadBalancingV2::LoadBalancer",
"Properties": {
"Scheme": "internet-facing",
"Tags": [
{
"Key": "environment",
"Value": {
"Ref": "Environment"
}
}
],
"SecurityGroups": [
{
"Ref": "LoadBalancerSecurityGroup"
}
],
"Subnets": [
{
"Ref": "AppServerSubnetAZ0"
},
{
"Ref": "AppServerSubnetAZ1"
},
{
"Ref": "AppServerSubnetAZ2"
}
]
}
}

子网 AppServerSubnetAZ0AppServerSubnetAZ1AppServerSubnetAZ2 是私有(private)子网,其路由指向 NAT 网关(如前所述)。

私有(private)子网中的实例可以访问外部 Internet,但 LoadBalancer 会停止工作。我的负载均衡器开始超时。

网络 ACL 已正确设置,并且上述两种情况中唯一的更改是路由表中的更改。

似乎无法弄清楚出了什么问题?我会假设 NAT 网关会像上面的文章/链接一样处理路由负载均衡器流量?

感谢您的帮助!

最佳答案

我不知道让 NAT 网关和 ELB 同时适用于私有(private)子网中的 EC2 实例是否可行。

我建议您的一个解决方法是保留路由表

10.0.0.0/16 -> local
0.0.0.0/0 -> igw-67e14203 (Internet Gateway)

并使用 EC2 实例而不是 NAT 网关实现 NAT。

关于amazon-web-services - AWS VPC : Strange Behaviour when using NAT and Internet Gateway with Load Balancer and Private Subnets,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39521871/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com