I need an expert in configuring HAPROXY to create a sample configuration file created for use on Amazons EC2.
Details of the sample are included in the job description. To complete this job the applicant MUST be very experienced in configuring HAPROXY.
The situation is this:
I have a scale group on Amazon, call this SGA. SGA has some machines within it. In addition, I have another single machine that is running HAPROXY. That machine listens on port 80 and forwards requests on to the machines in SGA, round robin to load balance
Machines in SGA occasionally die, become unresponsive, or are restarted. When they do, I need HAPROXY to respond appropriately as follows:
- Outside users connecting to port 80 on the haproxy machine must not receive an http error if there is a machine in SGA that is operational
- Outside users connecting to port 80 must not be subject to excessive delays while haproxy determines if machines are operational. Occasional delays of up to a second could be tolerated.
- If a machine in SGA becomes unresponsive, but later recovers, the HAPROXY machine should begin again to route requests to it
- If a machine in SGA dies and a new one takes its place, an outside process will update the haproxy config file and restart haproxy. When this occurs, haproxy should not break connections with outside clients, but should continue unabated.