MySQL Router K8s
- Canonical
- Databases
Channel | Revision | Published | Runs on |
---|---|---|---|
8.0/stable | 155 | 02 Sep 2024 | |
8.0/stable | 154 | 02 Sep 2024 | |
8.0/candidate | 531 | 12 Dec 2024 | |
8.0/candidate | 530 | 12 Dec 2024 | |
8.0/beta | 531 | 12 Dec 2024 | |
8.0/beta | 530 | 12 Dec 2024 | |
8.0/edge | 555 | 16 Dec 2024 | |
8.0/edge | 554 | 16 Dec 2024 |
juju deploy mysql-router-k8s --channel 8.0/stable
Deploy Kubernetes operators easily with Juju, the Universal Operator Lifecycle Manager. Need a Kubernetes cluster? Install MicroK8s to create a full CNCF-certified Kubernetes system in under 60 seconds.
Platform:
Interfaces/endpoints
MySQL Router K8s supports modern ‘mysql_client’ interface. Applications can easily connect MySQL using ‘data_interfaces’ library from ‘data-platform-libs’.
Modern mysql_client
interface (database
endpoint):
Adding a relation is accomplished with juju relate
(or juju integrate
for Juju 3.x) via endpoint database
. Read more about Juju relations (integrations). Example:
# Deploy Charmed MySQL K8s and MySQL Router K8s clusters with 3 nodes each
juju deploy mysql-k8s -n 3 --trust
juju deploy mysql-router-k8s -n 3 --trust --channel 8.0
# Deploy the relevant charms, e.g. mysql-test-app
juju deploy mysql-test-app
# Relate all applications
juju integrate mysql-k8s mysql-router-k8s
juju integrate mysql-router-k8s:database mysql-test-app
# Check established relation (using mysql_client interface):
juju status --relations
# Example of the properly established relation:
# > Integration provider Requirer Interface Type Message
# > mysql-k8s:database mysql-router-k8s:backend-database mysql_client regular
# > mysql-router-k8s:database mysql-test-app:database mysql_client regular
# > ...
Note: In order to relate with Charmed MySQL K8s, every table created by the client application must have a primary key. This is required by the group replication plugin enabled in this charm.
See all the charm interfaces here.