从 ALB 切换到 NLB 后健康检查失败?
Health check fails after switching from ALB to NLB?
在我将负载均衡器类型从 "application" 切换为 "network" 后,目标组中的健康检查失败。我需要使用网络负载平衡器才能在 api 网关中执行 vpc link。我将一个安全组附加到我的 ALB,但 NLB 不再需要它。
我了解 NLB 在第 4 层运行。我的 ALB 在端口 443 上侦听 HTTPS,在端口 80 上侦听目标组 HTTP。现在,我的 NLB 在端口 80 上侦听 TCP,在端口 80 上侦听目标组 TCP .
如果我更改附加到我的 EC2 实例的安全组并允许来自 anywhere
的 All TCP
流量,那么运行状况检查将再次开始通过。但是,我不想允许来自任何地方的流量。我还尝试将源设置为我的 vpc 安全组,但这也不起作用。
因此,我不确定应该在我的安全组中将源设置为什么。在我的安全组中,有没有一种方法可以将 All TCP
限制为仅限内部流量? NLB 是否做了与 ALB 不同的事情,这可能导致我的健康检查失败?
最终只使用了连接到网络负载均衡器的所有子网的 cidr 范围。
看来,对于网络负载均衡器,您必须只允许 NLB 中所有内容的所有流量,或将其限制在连接到负载均衡器的所有子网的 cidr 范围内。
在我将负载均衡器类型从 "application" 切换为 "network" 后,目标组中的健康检查失败。我需要使用网络负载平衡器才能在 api 网关中执行 vpc link。我将一个安全组附加到我的 ALB,但 NLB 不再需要它。
我了解 NLB 在第 4 层运行。我的 ALB 在端口 443 上侦听 HTTPS,在端口 80 上侦听目标组 HTTP。现在,我的 NLB 在端口 80 上侦听 TCP,在端口 80 上侦听目标组 TCP .
如果我更改附加到我的 EC2 实例的安全组并允许来自 anywhere
的 All TCP
流量,那么运行状况检查将再次开始通过。但是,我不想允许来自任何地方的流量。我还尝试将源设置为我的 vpc 安全组,但这也不起作用。
因此,我不确定应该在我的安全组中将源设置为什么。在我的安全组中,有没有一种方法可以将 All TCP
限制为仅限内部流量? NLB 是否做了与 ALB 不同的事情,这可能导致我的健康检查失败?
最终只使用了连接到网络负载均衡器的所有子网的 cidr 范围。
看来,对于网络负载均衡器,您必须只允许 NLB 中所有内容的所有流量,或将其限制在连接到负载均衡器的所有子网的 cidr 范围内。