/ansible-role-innodb-replicaset

Ansible role to manage InnoDB ReplicaSet in CentOS-like systems

Primary LanguageJinjaMIT LicenseMIT

Ansible Role: InnoDB ReplicaSet

CI Ansible Role GitHub license

Install and configure MySQL InnoDB ReplicaSet on your system.

Example Inventory

[innodb_replicaset:children]
innodb_replicaset_infra

[innodb_replicaset_infra]
innodb-replicaset-0               innodb_replicaset_role="primary" run_mysqlrouter="yes"
innodb-replicaset-1               innodb_replicaset_role="secondary" run_mysqlrouter="yes"

Example Playbook

---
- name: Deploy InnoDB ReplicaSet
  hosts: innodb_replicaset
  pre_tasks:
    - name: Verify Ansible meets InnoDB ReplicaSet requirements.
      assert:
        that: "ansible_version.full is version_compare('2.10.0', '>=')"
        msg: >
          "You must update Ansible to at least 2.10.0 to use this playbook"
  roles:
    - { role: innodb_replicaset, tags: innodb-replicaset }

Role Variables

These variables are set in defaults/main.yml. Please review and update default password:

######### InnoDB ReplicaSet
innodb_replicaset_cluster_admin: "rsadmin"
innodb_replicaset_cluster_password: "*Replica_pass21_sample"
innodb_replicaset_name: "rs_infra"

######### MySQLRouter
mysqlrouter_password: "*MysqlRouter_pass21_sample"
mysqlrouter_connect_timeout: 10
mysqlrouter_read_timeout: 10
mysqlrouter_bind_address: 0.0.0.0

######### Percona server
percona_server_version: "8.0.25-15"
percona_xtrabackup_version: "8.0.25-17"
percona_server_root_password: "demozCYqkQsampleYRwiQ0n7demo"
percona_server_packages:
 - ....

Requirements

pip packages listed in requirements.txt.

License

MIT

Author Information

v0112358