为什么客户端无法连接到我的弹性负载均衡负载均衡器?

1 分钟阅读
0

我想解决客户端无法连接到负载均衡器的问题。

解决方法

**注意:**如果在运行 AWS 命令行界面(AWS CLI)命令时收到错误,请确保您使用的是最新版本的 AWS CLI

检查端口侦听器

验证是否为负载均衡器端口正确配置了相应的侦听器:

检查目标实例的安全组

检查负载均衡器背后实例的安全组设置。对于附加到负载均衡器的每个子网,确认侦听器端口和运行状况检查端口允许双向流量:

检查负载均衡器的安全组

检查负载均衡器的安全组设置。

**注意:**负载均衡器安全组必须允许出站流量在实例的侦听器端口和运行状况检查端口上通行。

检查网络 ACL(针对 VPC 中的负载均衡器)

确认与负载均衡器子网关联的网络 ACL 允许相应的流量。对于附加到您的虚拟私有云(VPC)的每个子网,必须允许侦听器端口和运行状况检查端口上的双向流量。有关更多信息,请参阅 Network ACLs for load balancers in a VPC

检查路由表

确认负载均衡器所附加子网的路由表允许负载均衡器连接。负载均衡器连接必须使用指向互联网网关的默认路由。

**注意:**使用外部负载均衡器时,需要互联网网关

验证负载均衡器的连接

要验证从 Amazon Elastic Compute Cloud(Amazon EC2)实例到负载均衡器的连接,请执行以下步骤:

1.    连接到 Amazon EC2 实例(请参阅 Linux 实例Windows 实例的步骤)。

2.    确认实例是否安装了 netcatnc)或 telnet

3.    如果有公共负载均衡器,请验证实例是否有互联网连接。要确认互联网连接,请使用互联网网关网络地址转换(NAT)网关

4.    验证 Amazon EC2 实例安全组是否允许出站连接至互联网。然后,确认附加到实例在其上运行的子网的网络 ACL 是否允许入站和出站流量。

5.    根据您的配置,运行以下命令之一:

nc -v <elb_ip_address> <listener_port>
telnet <elb_ip_address> <listener_port>

6.    从外部客户端,对负载均衡器侦听器的 IP 地址运行 traceroute(Linux 客户端)或 tracert(Windows 客户端)实用程序。

7.    查看输出。

**注意:**如果您收到来自经典负载均衡器、应用程序负载均衡器或网络负载均衡器的其他错误代码,请参阅以下内容:

检查是否存在负载或容量问题

偶尔出现的连接问题可能说明了存在与负载或容量有关的问题。有关故障排除步骤,请参阅 How do I troubleshoot Classic Load Balancer capacity issues in ELB?

相关信息

How Elastic Load Balancing works

The load balancer generates an HTTP error

Troubleshoot a Classic Load Balancer: HTTP errors

AWS 官方
AWS 官方已更新 9 个月前