diff options
author | elijah <elijah@riseup.net> | 2013-07-30 13:10:52 -0700 |
---|---|---|
committer | elijah <elijah@riseup.net> | 2013-07-30 13:10:52 -0700 |
commit | 7ac64237fcb09893ae36b1b2f278e1474df8c49b (patch) | |
tree | b932aea2a204b452dc1e154c35fa1fe5b1ec1926 /puppet/modules | |
parent | 3368fe07aac81e1bef8701c106234a6d67ccad6d (diff) |
site_webapp - add support for haproxy weights and backup servers (resolves #3278)
Diffstat (limited to 'puppet/modules')
-rw-r--r-- | puppet/modules/site_webapp/templates/haproxy_couchdb.cfg.erb | 25 |
1 files changed, 16 insertions, 9 deletions
diff --git a/puppet/modules/site_webapp/templates/haproxy_couchdb.cfg.erb b/puppet/modules/site_webapp/templates/haproxy_couchdb.cfg.erb index f08161ee..914a964e 100644 --- a/puppet/modules/site_webapp/templates/haproxy_couchdb.cfg.erb +++ b/puppet/modules/site_webapp/templates/haproxy_couchdb.cfg.erb @@ -1,16 +1,23 @@ listen bigcouch-in - mode http + mode http balance roundrobin - option httplog - option dontlognull - option httpchk GET / - option http-server-close - + option httplog + option dontlognull + option httpchk GET / # health check using simple get to root + option http-server-close # use client keep-alive, but close server connection. + option allbackups # balance among all backups, not just one. + bind localhost:4096 -<% for port in @local_ports -%> - server couchdb_<%=port%> localhost:<%=port%> check inter 3000 fastinter 1000 downinter 1000 rise 2 fall 1 -<% end -%> + default-server inter 3000 fastinter 1000 downinter 1000 rise 2 fall 1 + +<%- if @haproxy['servers'] -%> +<%- @haproxy['servers'].each do |name,server| -%> +<%- backup = server['backup'] ? 'backup' : '' -%> + # <%=name%> + server couchdb_<%=server['port']%> <%=server['host']%>:<%=server['port']%> <%=backup%> weight <%=server['weight']%> check +<%- end -%> +<%- end -%> |