在某流媒体项目中,我们采用了Radware WSD负载均衡设备,并使用三角传输,保证最大的网络性能。这是需要在服务器上配置loopback地址,在负载均衡设备上使用tcp健康检查仍是失败。以下是服务器上配置的loopback地址:
1、修改lo地址为负载均衡设备的对外服务地址:
配置修改: vi /etc/sysconfig/network-scripts/ifcfg-lo:0
DEVICE=lo:0
IPADDR=192.168.10.111 NETMASK=255.255.255.255
ONBOOT=yes
NAME=loopback
测试是否配置成功,可以直接在此服务器上ping 192.168.10.111
2. 通过运行如下脚本实现对loopback口的arp广播的禁止:否则,其它机器,就可以ping通这个地址了
echo 1 > /proc/sys/net/ipv4/conf/all/arp_ignore
echo 1 > /proc/sys/net/ipv4/conf/eth0/arp_ignore echo 2 > /proc/sys/net/ipv4/conf/all/arp_announce
echo 2 > /proc/sys/net/ipv4/conf/eth0/arp_announce
后通过tcpdump抓包发现以下现象
抓包可见服务器对用户的请求发送了RST包,说明服务器的8080端口服务未开启。在服务器上telnet192.168.10.111 8080测试不通,说明用户的服务未针对loopback地址发布。修改服务后测试正常。
在使用三角传输模式时,用户服务器不仅要配置loopback地址,而且相应的服务端口要基于loopback地址发布才可以。