Skip to main content
Backup and restore procedures for Lumina.

PostgreSQL Backup

Create backup:
pg_dump -h localhost -U lumina lumina > backup.sql
Automated backups:
# Cron job for daily backups
0 2 * * * pg_dump -h localhost -U lumina lumina | gzip > /backups/lumina-$(date +\%Y\%m\%d).sql.gz

Kubernetes Backup

Using Velero:
velero backup create lumina-backup   --include-namespaces lumina
Restore:
velero restore create --from-backup lumina-backup

Docker Volume Backup

Backup:
docker run --rm   -v postgres-data:/data   -v $(pwd):/backup   alpine tar czf /backup/postgres-backup.tar.gz -C /data .
Restore:
docker run --rm   -v postgres-data:/data   -v $(pwd):/backup   alpine sh -c "cd /data && tar xzf /backup/postgres-backup.tar.gz"

Testing Restores

Always test restore procedures:
# 1. Create test database
createdb lumina_test

# 2. Restore backup
psql lumina_test < backup.sql

# 3. Verify data
psql lumina_test -c "SELECT COUNT(*) FROM traces"

# 4. Clean up
dropdb lumina_test