繁体   English   中英

AWS:为什么对我的私有子网 EC2 实例进行负载平衡需要公共 IP?

[英]AWS: Why is a public IP required for load-balancing to my private subnet EC2 instances?

我正在尝试让一个面向 Internet 的 ELB 对传入我的私有子网 EC2 实例的流量进行负载平衡。 我的负载平衡目标组报告我的 EC2 实例运行状况不佳,即使它们通过了 EC2 页面上的所有检查。

我不明白的是:如果我将网络接口和公共 IP 附加到我的私有子网 EC2 实例,那么一切正常。 归根结底,我的安全组仍然阻止外部直接访问我的实例,但我认为不需要公共 IP 地址,因为我了解负载均衡器可以使用内部 IP 地址。 那么我在这里没有正确理解什么? 非常感谢提前。

我的安全/网络设置如下:

  • 路由表:/16 VPC CIDR 到本地,0.0.0.0/0 到 Internet 网关,与所有子网隐式关联
  • NACL:(用于测试目的),入站和出站都允许到任何地方,与所有子网相关联
  • 私有子网 EC2 实例的安全组仅允许来自负载均衡器 SG 的传入流量,并允许所有出站流量。
  • 负载均衡器的安全组允许来自任何地方的传入流量,并允许所有出站流量。

我能找到的最接近的线程是: 如何负载平衡 AWS 私有子网 EC2 实例,但我检查了所有项目但没有成功。

什么是私有子网?

Ans- Private Subnet is - the subnet which does not have route to Internet Gateway.

路由到互联网网关是唯一决定它是公共子网还是私有子网的东西。

但是your subnet is having route to internet gateway ,这意味着您的子网是公共子网,公共子网需要公共 IP。

In your situation your subnet is not private subnet 并且面向 Internet 的 ELB 意味着您希望接受来自 Internet 的连接/请求。

要使其成为私有子网,请删除到 Internet 网关的路由。 如果您需要连接到您的实例,请使用 NAT 网关,或者如果您需要 SSH 您的实例,请使用堡垒实例

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM