| # This is a test configuration. |
| # It makes use of a farm built from 4 active servers and 4 backup servers, |
| # all listenening to different IP addresses on port 80. Health-checks are |
| # TCP only on port 81 so that iptables rules permit easy selection of which |
| # servers are enabled or disabled. It checks for the file /alive, and disables |
| # the server if the response is 404. |
| # |
| # Create statistics counters this way : |
| # |
| # iptables -N http |
| # iptables -A OUTPUT -p tcp --syn --dport 80 -j http |
| # for i in $(seq 1 8); do iptables -A http -d 127.0.0.$i; done |
| # iptables -A http -d 127.0.0.0/24 |
| # |
| # Consult the statistics using iptables this way: |
| # |
| # iptables --line-numbers -nxvL http |
| # iptables -Z http |
| # |
| # Block individual servers like this : |
| # iptables -I INPUT -p tcp --dport 81 -d 127.0.0.1 -j DROP |
| # |
| # Enable each server like this : |
| # touch $SRV_ROOT/alive |
| # |
| # Disable each server like this : |
| # rm -f $SRV_ROOT/alive |
| # |
| |
| global |
| maxconn 1000 |
| stats socket /tmp/sock1 mode 600 |
| stats timeout 3000 |
| stats maxconn 2000 |
| |
| listen sample1 |
| mode http |
| retries 1 |
| redispatch |
| contimeout 1000 |
| clitimeout 5000 |
| srvtimeout 5000 |
| maxconn 40000 |
| bind :8080 |
| cookie SRV insert indirect nocache |
| #balance source |
| balance roundrobin |
| option allbackups |
| server act1 127.0.0.1:80 cookie a1 weight 10 check port 81 inter 1000 fall 4 |
| server act2 127.0.0.2:80 cookie a2 weight 20 check port 81 inter 1000 fall 4 |
| server act3 127.0.0.3:80 cookie a3 weight 30 check port 81 inter 1000 fall 4 |
| server act4 127.0.0.4:80 cookie a4 weight 40 check port 81 inter 1000 fall 4 |
| server bck1 127.0.0.5:80 cookie b1 weight 10 check port 81 inter 1000 fall 4 backup |
| server bck2 127.0.0.6:80 cookie b2 weight 20 check port 81 inter 1000 fall 4 backup |
| server bck3 127.0.0.7:80 cookie b3 weight 30 check port 81 inter 1000 fall 4 backup |
| server bck4 127.0.0.8:80 cookie b4 weight 40 check port 81 inter 1000 fall 4 backup |
| option httpclose |
| stats uri /stats |
| stats refresh 5 |
| option httpchk GET /alive |
| http-check disable-on-404 |