Update haproxy.tmpl
connection to postgres should be closed forcibly when health-check fails
@@ -10,19 +10,23 @@ defaults
timeout server 30m
timeout check 5s
-frontend master_postgresql
- bind *:5000
- default_backend backend_master
-
-frontend replicas_postgresql
- bind *:5001
- default_backend backend_replicas
+listen stats
+ mode http
+ bind *:7000
+ stats enable
+ stats uri /
-backend backend_master
+listen master
+ bind *:5000
option httpchk OPTIONS /master
+ http-check expect status 200
+ default-server inter 3s fall 3 rise 2 on-marked-down shutdown-sessions
{{range gets "/members/*"}} server {{base .Key}} {{$data := json .Value}}{{base (replace (index (split $data.conn_url "/") 2) "@" "/" -1)}} maxconn 100 check port {{index (split (index (split $data.api_url "/") 2) ":") 1}}
{{end}}
-backend backend_replicas
+listen replicas
+ bind *:5001
option httpchk OPTIONS /replica
+ http-check expect status 200
+ default-server inter 3s fall 3 rise 2 on-marked-down shutdown-sessions
{{range gets "/members/*"}} server {{base .Key}} {{$data := json .Value}}{{base (replace (index (split $data.conn_url "/") 2) "@" "/" -1)}} maxconn 100 check port {{index (split (index (split $data.api_url "/") 2) ":") 1}}
{{end}}
