负载均衡SLB

无法访问负载均衡SLB

解决方案

本文中出现的端口和IP都是演示环境参数值,当排查客户端无法访问负载均衡问题时,请根据实际情况配置端口和内网IP信息。

• 不支持通过负载均衡SLB搭建FTP、TFTP、H323和SIP等

针对FTP服务,可以通过参考如下步骤解决问题。

  1. 如果是Linux系统,您可以尝试配置22端口的转发,使用SFTP连接并传输数据。
  2. 支持通过EIP可见模式将EIP绑定到FTP服务器上,对外提供FTP服务,配置详情请参见使用EIP部署FTP服务器。

• 服务器内网防火墙设置没有放行80端口。

可以参考如下步骤,暂时关闭防火墙。
1, Windows服务器上执行如下命令。

  1. firewall.cpl

2, Linux服务器上执行如下命令。

  1. /etc/init.d/iptables stop

• 后端端口异常。

参考如下步骤,确认问题。然后根据实际情况解决此问题。

1,对于四层负载均衡来说,使用telnet命令测试有响应即为正常,命令如下所示。

  1. telnet 10.XX.XX.1 80

2,对于七层负载均衡来说,HTTP状态码需要是200等代表正常的状态码,检验方法如下。

Windows:直接在ECS实例上访问ECS的内网IP,测试是否正常,命令如下所示。

  1. http://10.XX.XX.1

Linux:参考如下命令,查看返回值是否为HTTP/1.1 200 OK。

  1. curl -I 10.XX.XX.1

• rp_filter特性和负载均衡底层LVS的策略路由产生冲突,导致访问出现异常。

1,登录四层负载均衡后端添加的Linux系统ECS实例。

2,编辑/etc/sysctl.conf文件,将系统配置文件中的以下三个参数值设置为0。

  1. net.ipv4.conf.default.rp_filter = 0
  2. net.ipv4.conf.all.rp_filter = 0
  3. net.ipv4.conf.eth0.rp_filter = 0

3,然后执行sysctl -p命令,使配置生效。

• 监听功能异常。

在服务器上执行以下命令,如果能看到10.XX.XX.1:80的监听信息,或者0.0.0.0:80的监听信息,说明端口的监听正常。然后根据实际情况解决此问题。

1, Windows服务器上执行如下命令。

  1. netstat -ano | findstr :80

2, Linux服务器上执行如下命令。

  1. netstat -anp | grep :80

• 客户端本地网络或运营商中间链路异常。

从不同地域和不同网络环境,对负载均衡相应服务端口进行访问测试。

如果只有本地网络访问时出现异常,则判定是网络异常导致的问题,此时可以持续进行ping测试或MTR路由跟踪等手段进一步排查分析。