
This makes the haproxy role more generic so we can run another (or potentially even more) haproxy instance(s) to manage other services. The config file is moved to a variable for the haproxy role. The gitea specific config is then installed for the gitea-lb service by a new gitea-lb role. statsd reporting is made optional with an argument. This enables/disables the service in the docker compose. Role documenation is updated. Needed-By: https://review.opendev.org/678159 Change-Id: I3506ebbed9dda17d910001e71b17a865eba4225d
37 lines
815 B
Django/Jinja
37 lines
815 B
Django/Jinja
global
|
|
uid 1000
|
|
gid 1000
|
|
log /dev/log local0
|
|
maxconn 4000
|
|
pidfile /var/haproxy/run/haproxy.pid
|
|
stats socket /var/haproxy/run/stats uid 1000 gid 1000 mode 0600 level admin
|
|
|
|
defaults
|
|
log-format "%ci:%cp [%t] %ft [%bi]:%bp %b/%s %Tw/%Tc/%Tt %B %ts %ac/%fc/%bc/%sc/%rc %sq/%bq"
|
|
log global
|
|
maxconn 8000
|
|
option redispatch
|
|
retries 3
|
|
stats enable
|
|
timeout http-request 10s
|
|
timeout queue 1m
|
|
timeout connect 10s
|
|
timeout client 2m
|
|
timeout server 2m
|
|
timeout check 10s
|
|
|
|
{% for listener in gitea_lb_listeners %}
|
|
listen {{ listener.name }}
|
|
{% for bind in listener.bind %}
|
|
bind {{ bind }}
|
|
{% endfor %}
|
|
mode tcp
|
|
balance source
|
|
option tcp-check
|
|
|
|
{% for server in listener.servers %}
|
|
server {{ server.name }} {{ server.address }} check
|
|
{% endfor %}
|
|
|
|
{% endfor %}
|