{%- import_yaml "ssl_key_encrypted.sls" as ssl_key_encrypted_pillar %}
{%- set domain = "__DOMAIN__" %}
{%- set balancer_backends = "__CONTROLLER_NODES__".split(",") %}
+{%- set controller_nr = balancer_backends|length %}
+{%- set disabled_controller = "__DISABLED_CONTROLLER__" %}
+{%- set max_reqs = ("__CONTROLLER_MAX_QUEUED_REQUESTS__" or 128)|int %}
+{%- set max_tunnels = ("__CONTROLLER_MAX_GATEWAY_TUNNELS__" or 1000)|int %}
### NGINX
nginx:
### SERVER
server:
config:
+ worker_rlimit_nofile: {{ (max_reqs * 3 + max_tunnels) * controller_nr }}
+ events:
+ worker_connections: {{ (max_reqs * 3 + max_tunnels) * controller_nr }}
### STREAMS
http:
'geo $external_client':
'__CLUSTER_INT_CIDR__': 0
upstream controller_upstream:
{%- for backend in balancer_backends %}
+ {%- if disabled_controller == "" or not backend.startswith(disabled_controller) %}
'server {{ backend }}:80': ''
+ {%- else %}
+ 'server {{ backend }}:80 down': ''
+ {% endif %}
{%- endfor %}
### SNIPPETS