I'm new in LVS, and I have built up an LVS cluster including 4 RSs and 2
distributors. Keepalive failover works suprisingly well, and the whole
cluster serves DNS, HTTP, HTTPS, telnet, mail, POP3, IMAP and FTP.
Every service works well except active FTP. I have read trough howtos and
mailing lists but I have found no help to my problem. (Maybe I was too
FTP service is set to be persistent at 720 for both TCP ports 20 and 21.
Suppose connect the cluster using a command-line FTP client: connection is
established on port 21 to RS1. Then I issue an ls command, and another
connection is built on port 20 to the same RS. Then I wait for FTP
timeout, and I issue ls command again:
421 No Transfer Timeout (300 seconds): closing control connection.
Then I try to reconnect and when I issue ls, there is no prompt response,
200 PORT command successful.
425 Can't build data connection: Connection timed out
On the distributor it can be seen that connections point to different RSs
for ports 20 and 21.
[root]# ipvsadm -Lc
IPVS connection entries
pro expire state source virtual destination
TCP 14:55.19 ESTABLISHED client:4407 vs:ftp rs1:ftp
TCP 01:42.27 FIN_WAIT client:4376 vs:ftp rs1:ftp
TCP 11:55.19 NONE client:0 vs:ftp-data rs2:ftp-data
TCP 01:51.27 NONE client:0 vs:0 rs1:0
TCP 00:58.18 SYN_RECV client:49290 vs:ftp-data rs2:ftp-data