summaryrefslogtreecommitdiffstats
path: root/roles/openshift_loadbalancer/templates/haproxy.cfg.j2
diff options
context:
space:
mode:
authorJason DeTiberus <detiber@gmail.com>2016-05-27 08:56:32 -0400
committerJason DeTiberus <detiber@gmail.com>2016-05-27 08:56:32 -0400
commit4b734695abf9ca112c9ad3be33f03fcd1a1e7abf (patch)
tree714787ea14ac8cc432b6357f37e6d38a9dadbdfa /roles/openshift_loadbalancer/templates/haproxy.cfg.j2
parent7a189730b1b6dddbed174586afe752615e60d948 (diff)
parent57abf26c30e306d1527e92a61a94088e542bb006 (diff)
downloadopenshift-4b734695abf9ca112c9ad3be33f03fcd1a1e7abf.tar.gz
openshift-4b734695abf9ca112c9ad3be33f03fcd1a1e7abf.tar.bz2
openshift-4b734695abf9ca112c9ad3be33f03fcd1a1e7abf.tar.xz
openshift-4b734695abf9ca112c9ad3be33f03fcd1a1e7abf.zip
Merge pull request #1896 from abutcher/openshift-loadbalancer
Separate master and haproxy config playbooks.
Diffstat (limited to 'roles/openshift_loadbalancer/templates/haproxy.cfg.j2')
-rw-r--r--roles/openshift_loadbalancer/templates/haproxy.cfg.j276
1 files changed, 76 insertions, 0 deletions
diff --git a/roles/openshift_loadbalancer/templates/haproxy.cfg.j2 b/roles/openshift_loadbalancer/templates/haproxy.cfg.j2
new file mode 100644
index 000000000..05e360d3b
--- /dev/null
+++ b/roles/openshift_loadbalancer/templates/haproxy.cfg.j2
@@ -0,0 +1,76 @@
+# Global settings
+#---------------------------------------------------------------------
+global
+ chroot /var/lib/haproxy
+ pidfile /var/run/haproxy.pid
+ maxconn {{ openshift.loadbalancer.global_maxconn }}
+ user haproxy
+ group haproxy
+ daemon
+
+ # turn on stats unix socket
+ stats socket /var/lib/haproxy/stats
+
+#---------------------------------------------------------------------
+# common defaults that all the 'listen' and 'backend' sections will
+# use if not designated in their block
+#---------------------------------------------------------------------
+defaults
+ mode http
+ log global
+ option httplog
+ option dontlognull
+# option http-server-close
+ option forwardfor except 127.0.0.0/8
+ option redispatch
+ retries 3
+ timeout http-request 10s
+ timeout queue 1m
+ timeout connect 10s
+ timeout client 300s
+ timeout server 300s
+ timeout http-keep-alive 10s
+ timeout check 10s
+ maxconn {{ openshift.loadbalancer.default_maxconn }}
+
+listen stats :9000
+ mode http
+ stats enable
+ stats uri /
+
+{% for frontend in openshift.loadbalancer.frontends %}
+frontend {{ frontend.name }}
+{% for bind in frontend.binds %}
+ bind {{ bind }}
+{% endfor %}
+ default_backend {{ frontend.default_backend }}
+{% if 'mode' in frontend %}
+ mode {{ frontend.mode }}
+{% endif %}
+{% if 'options' in frontend %}
+{% for option in frontend.options %}
+ option {{ option }}
+{% endfor %}
+{% endif %}
+{% if 'redirects' in frontend %}
+{% for redirect in frontend.redirects %}
+ redirect {{ redirect }}
+{% endfor %}
+{% endif %}
+{% endfor %}
+
+{% for backend in openshift.loadbalancer.backends %}
+backend {{ backend.name }}
+ balance {{ backend.balance }}
+{% if 'mode' in backend %}
+ mode {{ backend.mode }}
+{% endif %}
+{% if 'options' in backend %}
+{% for option in backend.options %}
+ option {{ option }}
+{% endfor %}
+{% endif %}
+{% for server in backend.servers %}
+ server {{ server.name }} {{ server.address }} {{ server.opts }}
+{% endfor %}
+{% endfor %}