mariadb-galera/tasks/main.yml
2025-04-11 20:07:11 +02:00

70 lines
1.6 KiB
YAML

---
- name: Install software
ansible.builtin.package:
name: "{{ item }}"
state: present
with_items: "{{ db_packages }}"
- name: "Quick-Fix MariaDB/systemd problems"
ansible.builtin.lineinfile:
path: /usr/lib/systemd/system/mariadb.service
regexp: "^SendSIGKILL=no"
line: "SendSIGKILL=yes"
backup: true
register: db_systemd_fix
when: ansible_virtualization_type == "lxc"
- name: Reload systemd daemon # noqa: no-handler
ansible.builtin.systemd:
daemon_reload: true
when: db_systemd_fix is changed
- name: Get MariaDB settings
community.mysql.mysql_info:
filter: settings
login_unix_socket: /var/run/mysqld/mysqld.sock
register: db_settings
- name: "Config: Listen on all ip addresses"
ansible.builtin.lineinfile:
path: /etc/mysql/mariadb.conf.d/50-server.cnf
regexp: "^ *#* *bind-address"
line: "bind-address = 0.0.0.0"
backup: true
- name: Template galera.cnf
ansible.builtin.template:
src: galera.cnf.j2
dest: /etc/mysql/conf.d/galera.cnf
owner: root
group: root
mode: '0644'
backup: true
- name: Init Galera cluster
when: db_settings.settings.wsrep_cluster_address == ""
block:
- name: 'Stop service "{{ db_servicename }}"'
ansible.builtin.service:
name: "{{ db_servicename }}"
state: stopped
- name: Create galera cluster # noqa: no-handler no-changed-when
ansible.builtin.command:
cmd: /usr/bin/galera_new_cluster
when: inventory_hostname == groups.db.0
- name: 'Enable service "{{ db_servicename }}"'
ansible.builtin.service:
name: "{{ db_servicename }}"
state: started
enabled: true