Charmed MySQL K8s backup can be stored on any S3 compatible storage, e.g. on Ceph via RadosGW. The S3 access and configurations are managed with the s3-integrator charm. Deploy and configure the s3-integrator charm for RadosGW (click here to backup on AWS S3):
# Install MinIO client and create a bucket:
mc config host add dest https://radosgw.mycompany.fqdn <access-key> <secret-key> --api S3v4 --lookup path
mc mb dest/backups-bucket
juju deploy s3-integrator
juju run-action s3-integrator/leader sync-s3-credentials access-key=<access-key> secret-key=<secret-key> --wait
juju config s3-integrator \
endpoint="https://radosgw.mycompany.fqdn" \
bucket="backups-bucket" \
path="/mysql-k8s" \
region="" \
s3-api-version="" \
s3-uri-style="path"
To pass these configurations to Charmed MySQL K8s, relate the two applications:
juju relate s3-integrator mysql-k8s
You can create/list/restore backups now:
juju run-action mysql-k8s/leader list-backups --wait
juju run-action mysql-k8s/leader create-backup --wait
juju run-action mysql-k8s/leader list-backups --wait
juju run-action mysql-k8s/leader restore backup-id=<backup-id-here> --wait
You can also update your S3 configuration options after relating, using:
juju config s3-integrator <option>=<value>
The s3-integrator charm accepts many configurations - enter whatever configurations are necessary for your S3 storage.
MicroCeph TIP: make sure the
region
fors3-integrator
matches"sudo microceph.radosgw-admin zonegroup list"
output (useregion="default"
by default).