mirror of https://github.com/ceph/ceph-ansible.git
51 lines
1.5 KiB
YAML
51 lines
1.5 KiB
YAML
---
|
|
- name: Install haproxy and keepalived
|
|
ansible.builtin.package:
|
|
name: ['haproxy', 'keepalived']
|
|
state: present
|
|
register: result
|
|
until: result is succeeded
|
|
|
|
- name: Generate haproxy configuration file haproxy.cfg
|
|
ansible.builtin.template:
|
|
src: haproxy.cfg.j2
|
|
dest: /etc/haproxy/haproxy.cfg
|
|
owner: "root"
|
|
group: "root"
|
|
mode: "0644"
|
|
validate: "haproxy -f %s -c"
|
|
notify: Restart haproxy
|
|
|
|
- name: Set_fact vip to vrrp_instance
|
|
ansible.builtin.set_fact:
|
|
vrrp_instances: "{{ vrrp_instances | default([]) | union([{'name': 'VI_' + index | string, 'vip': item, 'master': groups[rgwloadbalancer_group_name][index]}]) }}"
|
|
loop: "{{ virtual_ips | flatten(levels=1) }}"
|
|
loop_control:
|
|
index_var: index
|
|
|
|
- name: Generate keepalived configuration file keepalived.conf
|
|
ansible.builtin.template:
|
|
src: keepalived.conf.j2
|
|
dest: /etc/keepalived/keepalived.conf
|
|
owner: "root"
|
|
group: "root"
|
|
mode: "0644"
|
|
notify: Restart keepalived
|
|
|
|
- name: Selinux related tasks
|
|
when:
|
|
- ansible_facts['os_family'] == 'RedHat'
|
|
- ansible_facts['selinux']['status'] == 'enabled'
|
|
block:
|
|
- name: Set_fact rgw_ports
|
|
ansible.builtin.set_fact:
|
|
rgw_ports: "{{ rgw_ports | default([]) | union(hostvars[item]['rgw_instances'] | map(attribute='radosgw_frontend_port') | map('string') | list) }}"
|
|
with_items: "{{ groups.get(rgw_group_name, []) }}"
|
|
|
|
- name: Add selinux rules
|
|
community.general.seport:
|
|
ports: "{{ rgw_ports }}"
|
|
proto: tcp
|
|
setype: http_port_t
|
|
state: present
|