Profiles

Charmed MySQL K8s resource utilization depends on the chosen profile:

juju deploy mysql-k8s --trust --config profile=<profile>

Profile values

Value

Description

Tech details

production
(default)

Maximum performance

~75% of ‘Allocatable memory’ granted for MySQL
max_connections=[RAM/12MiB] (max safe value)

testing

Minimal resource usage

innodb_buffer_pool_size = 20MB
innodb_buffer_pool_chunk_size=1MB
group_replication_message_cache_size=128MB
max_connections=100
performance-schema-instrument=’memory/%=OFF’

You can also see all MySQL charm configuration options on Charmhub.

Change profile

To change the profile, use the juju config command. For example:

juju deploy mysql-k8s --trust --config profile=testing && \
juju config mysql-k8s profile=production

Juju constraints

Juju constraints allows setting RAM/CPU limits for Kubernetes pods:

juju deploy mysql-k8s --trust --constraints cores=8 mem=16G

Juju constraints can be set together with the charm profile:

juju deploy mysql-k8s --trust --constraints cores=8 mem=16G --config profile=testing