Sunday, January 23, 2011

FTP Load Balancer

I need an EC2 instance to balance all incoming FTP connections to a list of FTP servers (EC2 instances too). This list will be changed dynamically due to the load of the FTP servers (launch a new FTP server when the FTP servers are overloaded or shutdown a FTP server when the load is low).

What you recommend? a FTP proxy? DNS server? Load balancer?

Note: The FTP servers must support Passive Mode

  • I haven't had the opportunity (or more so the need) yet to use Amazon's Elastic Load Balancing but I would put it out there as one for you to investigate.

    If it covers your needs then, just as the rest of their services, it takes away from you having to figure out all the pieces they already take care of (maintenance, redundancy of the balancer itself so you don't have single point of failure, etc).

    http://aws.amazon.com/elasticloadbalancing/

    inakiabt : Seems it is not supported: http://developer.amazonwebservices.com/connect/thread.jspa?messageID=139143 http://developer.amazonwebservices.com/connect/thread.jspa?messageID=142839
    ManiacZX : That is too bad, I was hoping down the line to look into if it could handle SIP traffic, from that second post it sounds like that might be held back by the same issues needing more like ip hash load balancing.
    From ManiacZX
  • I'd make it simple and use DNS. Get the list of FTP server IPs and add A records for a sub domain like ftp.example.com. Everyone using the domain should get a fairly random server and the load should generally be evenly distributed.

    FTP is probably one of the hardest things to load balance. Unless you have a real need, I'd stick with DNS.

    If you're uploading and downloading files under 5G, you might be better served by using S3.

    From Seth

0 comments:

Post a Comment