ba8477d8ed
Node address supports now upstream/default packages |
||
---|---|---|
defaults | ||
handlers | ||
meta | ||
tasks | ||
templates | ||
tests | ||
vars | ||
.gitignore | ||
.travis.yml | ||
LICENSE | ||
README.md | ||
Vagrantfile |
README.md
MariaDB (MySQL) Ansible role for Debian
Install and configure MariaDB (Galera Cluster). Manage replication (master/slave). Create users and databases.
OS | Origin | MariaDB versions |
---|---|---|
Debian Stretch | Debian | 10.1 |
Debian Stretch | Upstream | 10.1 / 10.2 / 10.3 / 10.4 |
Debian Buster | Debian | 10.3 |
Debian Buster | Upstream | 10.3 / 10.4 |
Notes
- Galera Cluster is experimental
- Due to Vagrant + Docker limitation (private network), replication/galera can't be checked with Travis
- If you need to test this role with Vagrant, you must install hostmanager plugin:
vagrant plugin install vagrant-hostmanager
- Percona Xtrabackup is not available in upstream repository. This feature is disabled in the role.
Requirements
Ansible 2.5+
Role Variables
mariadb_use_galera
: set true to configure and install Galera Cluster
Configuration
mariadb_root_password
: root password (should be protected with vault)
If you need a feature you can't configure, you can use this list. These config will go to /etc/mysql/conf.d/01-extra
.
mariadb_extra_config
: key/value hash see default vars file
Databases
mariadb_databases
: list...
Users
Example:
mariadb_users:
- name: 'lorem'
password: '123'
priv: lorem.*:ALL
host: 'localhost'
- name: 'ipsum'
password: '465'
priv: ipsum.*:ALL
host_all: yes
Check "priv" syntax in mysql_user module documentation
Packaging
mariadb_version
: depends Debian versionmariadb_repository
: MariaDB upstream APT repository (see: MariaDB repositories tool)mariadb_percona_repository
: Percona upstream APT repository (see: Percona APT doc)mariadb_use_percona_apt
: Force using Percona APT repository (useful when you want to use latest version of percona toolkits, xtrabackup... etc)
Dependencies
None.
Example Playbook
- hosts: servers
roles:
- { role: HanXHX.mysql, mariadb_origin: 'upstream' }
License
GPLv2
Donation
If this code helped you, or if you’ve used them for your projects, feel free to buy me some 🍻
- Bitcoin:
1BQwhBeszzWbUTyK4aUyq3SRg7rBSHcEQn
- Ethereum:
0x63abe6b2648fd892816d87a31e3d9d4365a737b5
- Litecoin:
LeNDw34zQLX84VvhCGADNvHMEgb5QyFXyD
- Monero:
45wbf7VdQAZS5EWUrPhen7Wo4hy7Pa7c7ZBdaWQSRowtd3CZ5vpVw5nTPphTuqVQrnYZC72FXDYyfP31uJmfSQ6qRXFy3bQ
No crypto-currency? ⭐ the project is also a way of saying thank you! 😎
Author Information
- Twitter: @hanxhx_