Mysql Innodb Cluster

  • OpenStack Charmers
  • Cloud
Channel Revision Published Runs on
latest/edge 157 22 Aug 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 156 22 Aug 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 155 22 Aug 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 154 22 Aug 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 143 22 Apr 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 142 22 Apr 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 141 22 Apr 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 140 22 Apr 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 139 22 Apr 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 138 22 Apr 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 137 22 Apr 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 136 22 Apr 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 115 20 Feb 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 112 20 Feb 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 111 20 Feb 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 108 20 Feb 2024
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 97 04 Sep 2023
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 95 04 Sep 2023
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 92 04 Sep 2023
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 90 04 Sep 2023
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
latest/edge 45 12 Apr 2023
Ubuntu 24.04 Ubuntu 23.10 Ubuntu 23.04 Ubuntu 22.10 Ubuntu 22.04 Ubuntu 20.04
8.0/stable 153 31 Jul 2024
Ubuntu 22.04 Ubuntu 20.04
8.0/edge 145 21 Jun 2024
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0/edge 72 09 Aug 2023
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0/edge 71 09 Aug 2023
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0/edge 66 09 Aug 2023
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0/edge 67 09 Aug 2023
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0/edge 62 09 Aug 2023
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0/edge 61 09 Aug 2023
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0/edge 59 09 Aug 2023
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0/edge 57 09 Aug 2023
Ubuntu 24.04 Ubuntu 23.04 Ubuntu 22.04
8.0.19/stable 24 05 May 2022
Ubuntu 22.04 Ubuntu 20.04
8.0.19/candidate 24 28 Apr 2022
Ubuntu 22.04 Ubuntu 20.04
8.0.19/edge 24 27 Apr 2022
Ubuntu 22.04 Ubuntu 21.10 Ubuntu 21.04 Ubuntu 20.10 Ubuntu 20.04
8.0.19/edge 15 26 Apr 2022
Ubuntu 22.04 Ubuntu 21.10 Ubuntu 21.04 Ubuntu 20.10 Ubuntu 20.04
juju deploy mysql-innodb-cluster --channel 8.0/stable
Show information

Platform:

Ubuntu
24.04 23.10 23.04 22.10 22.04 21.10 21.04 20.10 20.04

Overview

The mysql-innodb-cluster charm deploys a MySQL 8 InnoDB clustered database (i.e. MySQL InnoDB Cluster). It is used in conjunction with the mysql-router subordinate charm.

Important: The eoan series is the first series supported by the mysql-innodb-cluster and mysql-router charms. These charms replace the percona-cluster charm starting with the focal series.

Important: This documentation supports version 3.x of the Juju client. See the OpenStack Charm guide if you are using the 2.9.x client.

Usage

Configuration

See file config.yaml of the built charm (or see the charm in the Charm Store) for the full list of configuration options, along with their descriptions and default values. See the Juju documentation for details on configuring applications.

Deployment

MySQL 8 is natively HA and requires at least three database units, which are often containerised. To deploy a three-node cluster to new containers on machines ‘0’, ‘1’, and ‘2’:

juju deploy -n 3 --to lxd:0,lxd:1,lxd:2 mysql-innodb-cluster

A cloud application is joined to the database via an instance of mysql-router. For a pre-existing keystone application:

juju deploy mysql-router keystone-mysql-router
juju integrate keystone-mysql-router:db-router mysql-innodb-cluster:db-router
juju integrate keystone-mysql-router:shared-db keystone:shared-db

Important: When network spaces are used, the mysql-router and mysql-innodb-cluster charms must be configured such that the ‘db-router’ endpoint is bound to the same space.

See Infrastructure high availability in the OpenStack Charms Deployment Guide for more deploy information.

Root password

Passwords are automatically generated and stored by the application leader.

The root password required to use the mysql or mysqlsh utilities locally on the units can be retrieved using the following command:

juju exec --unit mysql-innodb-cluster/leader leader-get mysql.passwd

TLS

TLS communication between MySQL InnoDB Cluster and its cloud clients is supported out of the box via a self-signed CA certificate bundled within MySQL itself. However, a better option is to use a certificate signed by a Vault-based CA. This can be done once Vault has been initialised and has a root CA:

juju integrate mysql-innodb-cluster:certificates vault:certificates

See the vault charm README for more information.

Adding a unit on a new subnet

When adding a unit to an already formed cluster, and where that unit resides on a subnet different from any existing unit, the following extra actions are needed:

juju run --wait mysql-innodb-cluster/leader update-unit-acls
juju run --wait mysql-innodb-cluster/leader add-instance address=<address of new unit>

Actions

This section lists Juju actions supported by the charm. Actions allow specific operations to be performed on a per-unit basis. To display action descriptions run juju actions --schema mysql-innodb-cluster. If the charm is not deployed then see file actions.yaml.

  • add-instance
  • cluster-rescan
  • cluster-status
  • mysqldump
  • reboot-cluster-from-complete-outage
  • rejoin-instance
  • remove-instance
  • restore-mysqldump
  • set-cluster-option
  • update-unit-acls

Documentation

The OpenStack Charms project maintains two documentation guides:

Bugs

Please report bugs on Launchpad.


Help improve this document in the forum (guidelines). Last updated 1 year, 2 months ago.