我在四个 Squid 代理的代理集群中有一个非常奇怪的问题:
其中一台机器是主人。母校正在运行 ldirectord,它正在检查所有四台机器的可用性,分发新的客户端连接。
突然之间,经过多年的操作,我遇到了这个问题:
1)服务于主机角色的机器没有被分配新的连接,旧的连接被提供,直到新的代理被分配给客户端。
2)其他机器仍在处理请求,从master那里接管客户端(到目前为止,一切都很好)
3) “ipvsadm -L -n”显示 ActiveConn 和 InActConn 值不断减小。
一旦我将主机角色迁移到另一台机器,“ipvsadm -L -n”会显示大量活动和非活动连接,直到大约一个小时后,新主机上也会发生同样的事情。
数据点:今天下午又发生了这种情况,现在“ipvsadm -L -n”显示:
TCP 141.42.1.215:8080 wlc persistent 1800
-> 141.42.1.216:8080 Route 1 98 0
-> 141.42.1.217:8080 Route 1 135 0
-> 141.42.1.218:8080 Route 1 1 0
-> 141.42.1.219:8080 Route 1 2 0
现在已经有一段时间了,数字没有变化。
更多统计信息(ipvsadm -L --stats -n):
IP Virtual Server version 1.2.1 (size=4096)
Prot LocalAddress:Port Conns InPkts OutPkts InBytes OutBytes
-> RemoteAddress:Port
TCP 141.42.1.215:8080 1990351 87945600 0 13781M 0
-> 141.42.1.216:8080 561980 21850870 0 2828M 0
-> 141.42.1.217:8080 467499 23407969 0 3960M 0
-> 141.42.1.218:8080 439794 19364749 0 2659M 0
-> 141.42.1.219:8080 521378 23340673 0 4335M 0
对于所有真实服务器和虚拟服务器,“Conns”的值现在是不变的。流量仍在流动(InPkts 增加)。
我检查了“ipvsadm -L -n -c”的输出,发现:
25 FIN_WAIT
534 NONE
977 ESTABLISHED
然后我等了一分钟,得到:
21 FIN_WAIT
515 NONE
939 ESTABLISHED