This commit is contained in:
parent
bfd8b6cf72
commit
b4c3cd9658
@ -1,5 +1,29 @@
|
||||
---
|
||||
{%- from "haproxy/map.jinja" import haproxy with context %}
|
||||
{% for filename in haproxy.maps %}
|
||||
haproxy-maps-{{ filename }}:
|
||||
file.managed:
|
||||
- name: {{ haproxy.config.dir }}/maps/{{ filename }}
|
||||
- source: salt://haproxy/maps/{{ filename }}.j2
|
||||
- user: {{ haproxy.config.user }}
|
||||
- group: {{ haproxy.config.group }}
|
||||
- mode: "0600"
|
||||
- template: jinja
|
||||
- watch_in:
|
||||
- service: haproxy-service
|
||||
{% endfor %}
|
||||
|
||||
haproxy-spoe-config:
|
||||
file.managed:
|
||||
- name: {{ haproxy.config.dir }}/spoe.cfg
|
||||
- source: salt://haproxy/spoe/spoe.cfg.j2
|
||||
- user: {{ haproxy.config.user }}
|
||||
- group: {{ haproxy.config.group }}
|
||||
- mode: "0600"
|
||||
- template: jinja
|
||||
- watch_in:
|
||||
- service: haproxy-service
|
||||
|
||||
haproxy-config:
|
||||
file.managed:
|
||||
- name: {{ haproxy.config.dir }}/{{ haproxy.config.configfile }}
|
||||
|
@ -84,3 +84,4 @@ haproxy:
|
||||
domains: {}
|
||||
vhosts: {}
|
||||
services: {}
|
||||
spoe: {}
|
||||
|
@ -36,16 +36,3 @@ haproxy-script-{{ file.name }}:
|
||||
- watch_in:
|
||||
- service: haproxy-service
|
||||
{% endfor %}
|
||||
|
||||
{% for filename in haproxy.maps %}
|
||||
haproxy-maps-{{ filename }}:
|
||||
file.managed:
|
||||
- name: {{ haproxy.config.dir }}/maps/{{ filename }}
|
||||
- source: salt://haproxy/maps/{{ filename }}.j2
|
||||
- user: {{ haproxy.config.user }}
|
||||
- group: {{ haproxy.config.group }}
|
||||
- mode: "0600"
|
||||
- template: jinja
|
||||
- watch_in:
|
||||
- service: haproxy-service
|
||||
{% endfor %}
|
@ -205,6 +205,12 @@ listen {{ name }}
|
||||
{{- tcpendpoints(servers=values.servers, check=values.check|default(haproxy.config.check)) }}
|
||||
{% endfor -%}
|
||||
|
||||
# SPOE Agents
|
||||
{%- for name, values in haproxy.config.spoe.items() %}
|
||||
listen {{ name }}
|
||||
bind *:{{ values.port }},:::{{ values.port }} v4v6
|
||||
{% endfor -%}
|
||||
|
||||
{% if haproxy.config.admin.enable %}
|
||||
{{ admin() }}
|
||||
{%- endif %}
|
||||
|
30
states/haproxy/templates/spoe.cfg.j2
Normal file
30
states/haproxy/templates/spoe.cfg.j2
Normal file
@ -0,0 +1,30 @@
|
||||
## {{ salt['pillar.get']('salt_managed', default='Salt Managed') }}
|
||||
{%- from "haproxy/map.jinja" import haproxy with context %}
|
||||
|
||||
{%- for name, values in haproxy.config.spoe.items() %}
|
||||
[{{ name }}]
|
||||
spoe-agent {{ name }}
|
||||
messages {{ " ".join(values.messages.keys()) }} option var-prefix {{ name }}
|
||||
timeout hello 2s
|
||||
timeout idle 2m
|
||||
timeout processing 50ms
|
||||
use-backend {{ name }}
|
||||
log global
|
||||
|
||||
{%- for m, m_values in values.messages.items() %}
|
||||
spoe-message {{ m }}
|
||||
{%- if m_values.args.keys() > 0 %}
|
||||
args {{ " ".join([i+"="+v for i, v in m_values.args.items()]) }}
|
||||
{%- endif %}
|
||||
{%- if m_values.event %}
|
||||
event {{ m_values.event }}
|
||||
{%- endif %}
|
||||
{% endfor %}
|
||||
|
||||
spoe-message request
|
||||
args unique_id=unique-id clientip=src host=req.hdr(Host) method=method path=pathq headers=req.hdrs body_size=req.body_size body=req.body
|
||||
event on-frontend-http-request
|
||||
spoe-message response
|
||||
args unique_id=unique-id status=status
|
||||
event on-http-response
|
||||
{% endfor -%}
|
Loading…
Reference in New Issue
Block a user