roles/haproxy: Basic setup for HAproxy

The *haproxy* installs HAproxy and sets up basic configuration for it.
It configures the systemd unit to launch the service with the `-f
/etc/haproxy` arguments, which will cause it to load all files from the
`/etc/haproxy` directory, instead of just `/etc/haproxy/haproxy.cfg`.
This will allow other roles to add frontend and backend configuration by
adding additional files to this directory.
This commit is contained in:
2018-06-12 21:46:29 -05:00
parent 2f41ac3520
commit 235468a71c
6 changed files with 102 additions and 0 deletions

View File

@@ -0,0 +1,43 @@
- name: ensure haproxy is installed
package:
name=haproxy
state=present
tags:
- install
- name: ensure haproxy unit configuration extension directory exists
file:
path=/etc/systemd/system/haproxy.service.d
mode=0755
state=directory
- name: ensure haproxy config variable override is set
copy:
src=haproxy-config.conf
dest=/etc/systemd/system/haproxy.service.d/config.conf
mode=0644
notify:
- reload systemd
- restart haproxy
- name: ensure default haproxy configuration file is empty
copy:
src=haproxy.cfg
dest=/etc/haproxy
mode=0644
notify: restart haproxy
- name: ensure haproxy global configuration is set
template:
src=global.cfg.j2
dest=/etc/haproxy/10-global.cfg
mode=0644
notify: restart haproxy
- name: ensure haproxy defaults are set
template:
src=defaults.cfg.j2
dest=/etc/haproxy/20-defaults.cfg
mode=0644
notify: restart haproxy
- name: ensure haproxy starts at boot
service:
name=haproxy
enabled=yes