maxscale: refs #8822 - refactor some minnor things #86

Open
xavi wants to merge 4 commits from 8822_MaxScale_final_migrate into main
2 changed files with 28 additions and 19 deletions

View File

@ -1,3 +1,7 @@
- name: Set installation method for MaxScale
set_fact:
maxscale_use_deb: "{{ db.maxscale == '23.08.5' }}"
maxscale_use_repo: "{{ db.maxscale != '23.08.5' }}"
- name: Ensure required packages for MaxScale are installed
apt:
name: keepalived
@ -16,6 +20,24 @@
cmd: "/bin/bash /tmp/mariadb_repo_setup --mariadb-server-version={{ db.version | default('10.11.10') }} --mariadb-maxscale-version={{ db.maxscale | default('23.08.9') }}"
creates: "/etc/apt/sources.list.d/mariadb.list"
when: mariadb_repo_script.changed
- name: Install maxscale via apt
apt:
name: maxscale
state: present
install_recommends: no
update_cache: true
when: maxscale_use_repo
- name: Download MaxScale 23.08.5 .deb package
get_url:
url: "https://dlm.mariadb.com/3773315/MaxScale/23.08.5/packages/debian/bookworm/x86_64/maxscale-23.08.5-1.debian.bookworm.x86_64.deb"
dest: "/tmp/maxscale-23.08.5.deb"
mode: '0644'
when: maxscale_use_deb
register: maxscale_manual_deb_tmp
- name: Install MaxScale .deb packages manually
apt:
deb: "/tmp/maxscale-23.08.5.deb"
when: maxscale_manual_deb_tmp.changed
- name: Ensure systemd override directory exists
file:
path: /etc/systemd/system/maxscale.service.d
@ -23,12 +45,6 @@
owner: root
group: root
mode: 'u=rwx,g=rx,o=rx'
- name: Install maxscale
apt:
name: maxscale
state: present
install_recommends: no
update_cache: true
- name: Ensure /etc/ssl/private has correct permissions and ownership
file:
path: /etc/ssl/private
@ -37,7 +53,7 @@
group: maxscale
mode: "u=rwx,g=rx,o="
- name: Deploy templated configuration files
ansible.builtin.template:
template:
src: "{{ item.src }}"
dest: "{{ item.dest }}"
owner: "{{ item.owner | default('root') }}"
@ -59,9 +75,3 @@
loop: "{{ certificates }}"
notify:
- restart-maxscale

View File

@ -16,23 +16,22 @@ vrrp_script check_maxscale {
vrrp_instance {{ vip.name }} {
interface {{ k.interface }}
state BACKUP
priority {{ k.priorities.master if vip.host == inventory_hostname_short else k.priorities.backup }}
priority {{ k.priorities.master if vip.host == inventory_hostname else k.priorities.backup }}
virtual_router_id {{ vip.vrid }}
advert_int 1
accept
unicast_src_ip {{ ansible_host }}
unicast_src_ip {{ ansible_default_ipv4.address }}
unicast_peer {
{% for peer in k.peers if peer.host != inventory_hostname %}
{% for peer in k.peers %}
{% if peer.host != inventory_hostname %}
{{ peer.ip }}
{% endif %}
{% endfor %}
}
virtual_ipaddress {
{{ vip.vip }}
}
track_script {
check_maxscale
}