On Wed, Sep 14, 2016 at 11:01:36PM +0200, Pavlos Parissis wrote:
> in our setup where we have haproxy in PoPs which forwards traffic to haproxy
> servers in main data-centers, I am planning to address the ephemeral port
> exhaustion symptom by having the frontends in data centers listening on
> IPs, so I can have the same server multiple times in the backend at PoP.
> backend data_center_haproxies
> server1_on_ip1 126.96.36.199 ....
> server1_on_ip2 188.8.131.52 ....
> with our system inventory/puppet infra assigning multiple IPs on servers at
> isn't that simple, I know it sounds weird.
Note that you can also make your servers listen on multiple ports, or use
multiple addresses on haproxy for this. I tend to prefer having multiple
ports because it multiplies the allocatable port ranges without adding IP
Another point to note is that if you're running out of source ports due
to idle keep-alive connections between haproxy and the servers, you can
enable http-reuse to significantly improve the situation. It will also
remove one round-trip for the connect() and will reduce the memory usage
on the server side, so there are benefits everywhere.