maxscale: refs #8822 - refactor some minnor things #86
|
@ -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
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
|
|
@ -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
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue