MySQL InnoDB Cluster Charm deploys and manages the lifecycle of a
MySQL InnoDB Cluster.
This charm provides a MySQL 8 InnoDB clustered database.
Ubuntu 19.10 or above is required.
The charm is intended for deploying a cluster and therefore does not deploy on a single unit.
juju deploy -n 3 mysql-innodb-cluster
juju add-relation mysql-innodb-cluster:db-router msyql-router:db-router
The charm can be related to existing charms that use the shared-db relation.
However, this relation should be considered deprecated:
juju add-relation mysql-innodb-cluster:shared-db keystone:shared-db
Scale out Usage
Nodes can be added to the cluster as Read Only nodes:
juju add-unit mysql-innodb-cluster
Known Limitations and Issues
Warning: This charm is in preview state.
The charm is under active development and is not yet production ready. Its
current intended use is for validation of MySQL 8 InnoDB cluster for use with
The name of the cluster can be customized at deploy time:
juju deploy -n 3 mysql-innodb-cluster --config cluster-name myCluster
OpenStack Charmers firstname.lastname@example.org
Please report bugs on Launchpad.
For general questions please refer to the OpenStack Charm Guide.
- (boolean) If True enables openstack upgrades for this charm via juju actions. You will still need to set openstack-origin to the new repository but instead of an upgrade running automatically across all units, it will wait for you to execute the openstack-upgrade action for this charm on each unit. If False it will revert to existing behavior of upgrading all units on config change.
- (string) Cluster name for the InnoDB cluster. Must be unique.
- (int) Maximum connections to allow. A value of -1 means use the server's compiled-in default. This is not typically that useful so the charm will configure PXC with a default max-connections value of 600. Note: Connections take up memory resources. Either at startup time with performance-schema=True or during run time with performance-schema=False. This value is a balance between connection exhaustion and memory exhaustion. . Consult a MySQL memory calculator like http://www.mysqlcalculator.com/ to understand memory resources consumed by connections. See also performance-schema.
- (string) DEPRECATED. Use snap-http-proxy and snap-https-proxy model configuration settings. HTTP/HTTPS web proxy for Snappy to use when accessing the snap store.
- (string) DEPRECATED. Use snap-store-proxy model configuration setting. The address of a Snap Store Proxy to use for snaps e.g. http://snap-proxy.example.com
- (string) How often snapd handles updates for installed snaps. The default (an empty string) is 4x per day. Set to "max" to check once per month based on the charm deployment date. You may also set a custom string as described in the 'refresh.timer' section here: https://forum.snapcraft.io/t/system-options/87
- (string) Repository from which to install. May be one of the following: distro (default), ppa:somecustom/ppa, a deb url sources entry, or a supported Ubuntu Cloud Archive e.g. . cloud:<series>-<openstack-release> cloud:<series>-<openstack-release>/updates cloud:<series>-<openstack-release>/staging cloud:<series>-<openstack-release>/proposed . See https://wiki.ubuntu.com/OpenStack/CloudArchive for info on which cloud archives are available and supported.
- (string) TLS CA to use to communicate with other components in a deployment. . __NOTE__: This configuration option will take precedence over any certificates received over the ``certificates`` relation.
- (string) TLS certificate to install and use for any listening services. . __NOTE__: This configuration option will take precedence over any certificates received over the ``certificates`` relation.
- (string) TLS key to use with certificate specified as ``ssl_cert``. . __NOTE__: This configuration option will take precedence over any certificates received over the ``certificates`` relation.
- (int) Sets table_open_cache (formerly known as table_cache) to mysql.
- (boolean) Setting this to True will allow supporting services to log to syslog.