MySQL Router K8s

Channel Revision Published Runs on
8.0/stable 155 02 Sep 2024
Ubuntu 22.04
8.0/stable 154 02 Sep 2024
Ubuntu 22.04
8.0/candidate 155 27 Aug 2024
Ubuntu 22.04
8.0/candidate 154 27 Aug 2024
Ubuntu 22.04
8.0/beta 155 20 Aug 2024
Ubuntu 22.04
8.0/beta 154 20 Aug 2024
Ubuntu 22.04
8.0/edge 167 07 Oct 2024
Ubuntu 22.04
8.0/edge 166 07 Oct 2024
Ubuntu 22.04
juju deploy mysql-router-k8s --channel 8.0/edge
Show information

Platform:

Note: All commands are written for juju >= v.3.1

If you’re using juju 2.9, check the juju 3.0 Release Notes.

How to enable TLS encryption

This guide will show how to enable TLS using the self-signed-certificates operator as an example.

Self-signed certificates are not recommended for a production environment.

Check this guide for an overview of the TLS certificates charms available.


Enable TLS

First, deploy the TLS charm:

juju deploy self-signed-certificates

To enable TLS, integrate the two applications:

juju integrate self-signed-certificates mysql-router-k8s

Manage keys

Updates to private keys for certificate signing requests (CSR) can be made via the set-tls-private-key action. Note that passing keys to external/internal keys should only be done with base64 -w0, not cat.

With three replicas, this schema should be followed:

Generate a shared internal (private) key:

openssl genrsa -out internal-key.pem 3072

Apply the newly generated internal key on each juju unit:

juju run mysql-router-k8s/0 set-tls-private-key "internal-key=$(base64 -w0 internal-key.pem)"
juju run mysql-router-k8s/1 set-tls-private-key "internal-key=$(base64 -w0 internal-key.pem)"
juju run mysql-router-k8s/2 set-tls-private-key "internal-key=$(base64 -w0 internal-key.pem)"

Updates can also be done with auto-generated keys with:

juju run mysql-router-k8s/0 set-tls-private-key
juju run mysql-router-k8s/1 set-tls-private-key
juju run mysql-router-k8s/2 set-tls-private-key

Disable TLS

Disable TLS by removing the integration:

juju remove-relation self-signed-certificates mysql-router-k8s

Help improve this document in the forum (guidelines). Last updated 7 months ago.