Context
Right now the backup and restore guide is telling users to run the following commands to create a dump of the sqlite content of MLMD's PVC:
# CKF 1.8
MLMF_POD="mlmd-0"
MLMD_CONTAINER="mlmd"
kubectl exec -n kubeflow $MLMD_POD -c $MLMD_CONTAINER -- \
/bin/bash -c "apt update && apt install sqlite3 -y"
This has the following 2 drawbacks:
- It will not work in airgap environments
- Users need to manually use commands to create the backup and push it to S3
What needs to get done
- Include any binaries needed for the backup into the Charm (could be separate task)
- Have an action that can make the backup and push it to S3
- Will most probably need to have a relation with
s3-interface for this
This will also need to take into account if MLMD should block receiving traffic when making the backup or not (scaling down the pebble service).
Definition of Done
- Have a spike to confirm we know if MLMD should be up/down when doing the backup
- The action can be executed in an airgapped environment
- Users don't need to run any manual commands from their machine
- The data will go directly from the Charm to S3
Context
Right now the backup and restore guide is telling users to run the following commands to create a dump of the sqlite content of MLMD's PVC:
This has the following 2 drawbacks:
What needs to get done
s3-interfacefor thisThis will also need to take into account if MLMD should block receiving traffic when making the backup or not (scaling down the pebble service).
Definition of Done