| global |
| log 127.0.0.1 local0 |
| log 127.0.0.1 local1 debug |
| tune.ssl.default-dh-param 2048 |
| maxconn 4096 |
| |
| defaults |
| log global |
| mode http |
| option httplog |
| option dontlognull |
| retries 3 |
| option redispatch |
| maxconn 2000 |
| timeout connect 5000 |
| timeout client 50000 |
| timeout server 50000 |
| |
| frontend haproxynode |
| bind *:$HA_GERRIT_CANONICAL_PORT |
| $HA_HTTPS_BIND |
| mode http |
| acl redirect_reads url_reg -i git-upload-pack |
| acl redirect_reads url_reg -i clone.bundle |
| acl redirect_writes url_reg -i git-receive-pack |
| use_backend read-backendnodes if redirect_reads |
| use_backend write-backendnodes if redirect_writes |
| default_backend read-backendnodes |
| |
| frontend git_ssh |
| bind *:$SSH_ADVERTISED_PORT |
| option tcplog |
| mode tcp |
| timeout client 5m |
| default_backend ssh |
| |
| |
| backend read-backendnodes |
| mode http |
| balance source |
| option forwardfor |
| http-request set-header X-Forwarded-Port %[dst_port] |
| default-server inter 10s fall 3 rise 2 |
| option httpchk GET /config/server/healthcheck~status HTTP/1.0 |
| http-check expect status 200 |
| server node1 $HA_GERRIT_SITE1_HOSTNAME:$HA_GERRIT_SITE1_HTTPD_PORT check inter 10s |
| server node2 $HA_GERRIT_SITE2_HOSTNAME:$HA_GERRIT_SITE2_HTTPD_PORT check inter 10s backup |
| |
| backend write-backendnodes |
| mode http |
| balance roundrobin |
| option forwardfor |
| http-request set-header X-Forwarded-Port %[dst_port] |
| default-server inter 10s fall 3 rise 2 |
| option httpchk GET /config/server/healthcheck~status HTTP/1.0 |
| http-check expect status 200 |
| server node1 $HA_GERRIT_SITE1_HOSTNAME:$HA_GERRIT_SITE1_HTTPD_PORT check inter 10s |
| server node2 $HA_GERRIT_SITE2_HOSTNAME:$HA_GERRIT_SITE2_HTTPD_PORT check inter 10s backup |
| |
| backend ssh |
| mode tcp |
| option redispatch |
| option httpchk GET /config/server/healthcheck~status HTTP/1.0 |
| balance roundrobin |
| timeout connect 10s |
| timeout server 5m |
| server ssh_node1 $HA_GERRIT_SITE1_HOSTNAME:$HA_GERRIT_SITE1_SSHD_PORT check inter 10s check port $HA_GERRIT_SITE1_HTTPD_PORT inter 10s |
| server ssh_node2 $HA_GERRIT_SITE2_HOSTNAME:$HA_GERRIT_SITE2_SSHD_PORT check inter 10s check port $HA_GERRIT_SITE2_HTTPD_PORT inter 10s backup |