62 lines
1.4 KiB
YAML
62 lines
1.4 KiB
YAML
- name: load distribution-specific values
|
|
include_vars: '{{ item }}'
|
|
with_first_found:
|
|
- '{{ ansible_distribution }}.yml'
|
|
- defaults.yml
|
|
|
|
- name: ensure haproxy is installed
|
|
package:
|
|
name=haproxy
|
|
state=present
|
|
tags:
|
|
- install
|
|
|
|
- name: ensure default haproxy configuration file is empty
|
|
copy:
|
|
src: haproxy.cfg
|
|
dest: /etc/haproxy
|
|
mode: u=rw,go=r
|
|
notify: restart haproxy
|
|
- name: ensure haproxy global configuration is set
|
|
template:
|
|
src: global.cfg.j2
|
|
dest: /etc/haproxy/conf.d/10-global.cfg
|
|
mode: u=rw,go=r
|
|
notify: restart haproxy
|
|
- name: ensure haproxy defaults are set
|
|
template:
|
|
src: defaults.cfg.j2
|
|
dest: /etc/haproxy/conf.d/20-defaults.cfg
|
|
mode: u=rw,go=r
|
|
notify: restart haproxy
|
|
- name: ensure haproxy stats frontend is configured
|
|
template:
|
|
src: stats.cfg.j2
|
|
dest: /etc/haproxy/conf.d/30-stats.cfg
|
|
mode: u=rw,go=r
|
|
notify: reload haproxy
|
|
tags:
|
|
- config
|
|
- stats
|
|
|
|
- name: ensure haproxy starts at boot
|
|
service:
|
|
name: haproxy
|
|
enabled: true
|
|
tags:
|
|
- service
|
|
|
|
- name: ensure firewall is configured for haproxy stats
|
|
firewalld:
|
|
port: '{{ haproxy_stats_port }}/tcp'
|
|
immediate: '{{ item == "immediate" }}'
|
|
permanent: '{{ item == "permanent" }}'
|
|
state: enabled
|
|
loop:
|
|
- immediate
|
|
- permanent
|
|
when: host_uses_firewalld|d(true) and haproxy_enable_stats
|
|
tags:
|
|
- firewalld
|
|
- stats
|