54 lines
1.3 KiB
YAML
Executable File
54 lines
1.3 KiB
YAML
Executable File
---
|
|
- name: Haproxy install
|
|
package:
|
|
name="{{ item }}"
|
|
state=latest
|
|
update_cache=yes
|
|
with_items:
|
|
- haproxy
|
|
when: ansible_distribution == 'Ubuntu'
|
|
|
|
- name: Haproxy install
|
|
package:
|
|
name="{{ item }}"
|
|
state=latest
|
|
with_items:
|
|
- haproxy
|
|
when: ansible_distribution == 'Fedora'
|
|
|
|
- name: Enable haproxy service
|
|
replace:
|
|
dest: /etc/default/haproxy
|
|
regexp: "ENABLED=0"
|
|
replace: "ENABLED=1"
|
|
backup: no
|
|
when: ansible_distribution == 'Ubuntu'
|
|
|
|
- name: Place the haproxy configuration file
|
|
copy:
|
|
src: templates/haproxy.cfg.j2
|
|
dest: /etc/haproxy/haproxy.cfg
|
|
owner: root
|
|
group: root
|
|
when: ansible_distribution == 'Ubuntu'
|
|
|
|
- name: Place the haproxy configuration file
|
|
copy:
|
|
src: templates/haproxy_fedora.cfg.j2
|
|
dest: /etc/haproxy/haproxy.cfg
|
|
owner: root
|
|
group: root
|
|
when: ansible_distribution == 'Fedora'
|
|
|
|
- name: Add web servers to the haproxy
|
|
lineinfile:
|
|
dest: /etc/haproxy/haproxy.cfg
|
|
line: " server ws{{ item[0].openstack[item[1]] }} {{ item[0].openstack[item[1]] }}:80 check"
|
|
with_nested:
|
|
- "{{ hostvars.cloud.webserver.results }}"
|
|
- ["private_v4", "public_v4"]
|
|
when: item[0].openstack[item[1]] != ''
|
|
no_log: True
|
|
|
|
- service: name=haproxy state=restarted enabled=yes
|