Small refactoring for Galera Cluster
parent
b8ad3b8b64
commit
254a986648
|
@ -25,8 +25,7 @@ Ansible 2.5+
|
|||
Role Variables
|
||||
--------------
|
||||
|
||||
- `mariadb_origin`: origin of the package ("default" or "upstream")
|
||||
- `mariadb_vendor`: "mariadb", "mariadb\_galera"
|
||||
- `mariadb_use_galera`: set true to configure and install Galera Cluster
|
||||
|
||||
### Configuration
|
||||
|
||||
|
@ -75,7 +74,7 @@ Example Playbook
|
|||
|
||||
- hosts: servers
|
||||
roles:
|
||||
- { role: HanXHX.mysql, mariadb_origin: 'upstream', mariadb_vendor: 'mariadb' }
|
||||
- { role: HanXHX.mysql, mariadb_origin: 'upstream' }
|
||||
|
||||
License
|
||||
-------
|
||||
|
|
|
@ -16,13 +16,13 @@ Vagrant.configure("2") do |config|
|
|||
|
||||
cases = [
|
||||
# Debian Stretch
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: dk_deb_stretch, vars: {mariadb_origin: 'default', mariadb_vendor: 'mariadb' }, groups: ['master'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: nil, vars: {mariadb_origin: 'default', mariadb_vendor: 'mariadb' }, groups: ['slave'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: dk_deb_stretch, vars: {mariadb_origin: 'upstream', mariadb_vendor: 'mariadb' }, groups: ['master'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: nil, vars: {mariadb_origin: 'upstream', mariadb_vendor: 'mariadb' }, groups: ['slave'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: dk_deb_stretch, vars: {mariadb_origin: 'upstream' }, groups: ['mariadbgalera', '1'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: nil, vars: {mariadb_origin: 'upstream' }, groups: ['mariadbgalera', '2'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: nil, vars: {mariadb_origin: 'upstream' }, groups: ['mariadbgalera', '3'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: dk_deb_stretch, vars: {mariadb_origin: 'default' }, groups: ['master'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: nil, vars: {mariadb_origin: 'default' }, groups: ['slave'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: dk_deb_stretch, vars: {mariadb_origin: 'upstream' }, groups: ['master'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: nil, vars: {mariadb_origin: 'upstream' }, groups: ['slave'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: dk_deb_stretch, vars: {mariadb_origin: 'upstream' }, groups: ['mariadbgalera', '1'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: nil, vars: {mariadb_origin: 'upstream' }, groups: ['mariadbgalera', '2'] },
|
||||
{ os_name: 'stretch', vbox: vbox_deb_stretch, docker: nil, vars: {mariadb_origin: 'upstream' }, groups: ['mariadbgalera', '3'] },
|
||||
]
|
||||
|
||||
cases.each_with_index do |opts,index|
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
# Setup
|
||||
# -------------------------------------
|
||||
mariadb_origin: 'default'
|
||||
mariadb_vendor: 'mariadb'
|
||||
mariadb_use_galera: false
|
||||
mariadb_root_password: 'change_me_NOW'
|
||||
mariadb_notify_restart: true
|
||||
mariadb_upstream_apt_src: false
|
||||
|
|
|
@ -1,17 +1,16 @@
|
|||
---
|
||||
|
||||
- name: INCLUDE | Use Percona repository
|
||||
- name: INCLUDE | Setup Percona repository
|
||||
include: 'percona/apt.yml'
|
||||
when: mariadb_use_percona_apt
|
||||
|
||||
- name: INCLUDE | Install MariaDB from Debian repo
|
||||
include: 'mariadb/default.yml'
|
||||
when: mariadb_origin == 'default' and mariadb_vendor == 'mariadb'
|
||||
|
||||
- name: INCLUDE | Install MariaDB from MariaDB repo
|
||||
- name: INCLUDE | Setup MariaDB repository
|
||||
include: 'mariadb/upstream.yml'
|
||||
when: mariadb_origin == 'upstream'
|
||||
|
||||
- name: INCLUDE | Install MariaDB
|
||||
include: 'mariadb/default.yml'
|
||||
|
||||
- name: APT | Install few MariaDB related tools
|
||||
apt:
|
||||
pkg: "{{ mariadb_tools }}"
|
||||
|
|
|
@ -28,4 +28,4 @@
|
|||
- name: APT | Install Galera
|
||||
apt:
|
||||
pkg: galera-3
|
||||
when: mariadb_vendor == 'mariadb_galera'
|
||||
when: mariadb_use_galera
|
||||
|
|
|
@ -19,6 +19,3 @@
|
|||
apt_repository:
|
||||
repo: 'deb-src {{ mariadb_repository }} {{ ansible_distribution_release }} main'
|
||||
when: mariadb_upstream_apt_src
|
||||
|
||||
- name: INCLUDE | Normal Install
|
||||
include: default.yml
|
||||
|
|
|
@ -43,7 +43,7 @@
|
|||
|
||||
- name: INCLUDE | Galera
|
||||
include: galera/main.yml
|
||||
when: mariadb_vendor == 'mariadb_galera'
|
||||
when: mariadb_use_galera
|
||||
|
||||
- name: INCLUDE | Replication
|
||||
include: replication/main.yml
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
mariadb_vendor: 'mariadb_galera'
|
||||
mariadb_use_galera: true
|
||||
mariadb_galera_members:
|
||||
- '{% if is_docker %}docker-{% else %}vbox-{% endif %}{{ ansible_distribution_release }}-upstream-mariadbgalera-1'
|
||||
- '{% if is_docker %}docker-{% else %}vbox-{% endif %}{{ ansible_distribution_release }}-upstream-mariadbgalera-2'
|
||||
|
|
|
@ -1 +0,0 @@
|
|||
mariadb_vendor: 'mysql'
|
Loading…
Reference in New Issue