Overview
TheRedisScheduledBackup custom resource defines a cron-based backup schedule for a RedisCluster. It automatically creates RedisBackup resources on schedule.
API Group: redis.io/v1Kind:
RedisScheduledBackupShort Name:
rsb
Spec Fields
Cron expression defining when to run backupsConstraints:
- Minimum length:
1
0 2 * * *- Daily at 2:00 AM0 */6 * * *- Every 6 hours0 0 * * 0- Weekly on Sunday at midnight0 3 1 * *- Monthly on the 1st at 3:00 AM
Name of the RedisCluster to back up
Specifies which pod to run the backup onEnum values:
primary- Always run backup on the primary instanceprefer-replica- Run on a replica if available, otherwise on the primary
Backup method to useEnum values:
rdb- Redis Database file (point-in-time snapshot viaBGSAVE)aof- Append-only file (viaBGREWRITEAOF, archived as.tar.gz)
Defines where to store the backupSee RedisBackup destination field for full schema.
Stops future backups from being scheduled when
trueExisting backups continue to completion. Does not delete previously created RedisBackup resources.Number of successful backup resources to retainConstraints:
- Minimum:
0
Number of failed backup resources to retainConstraints:
- Minimum:
0
Status Fields
Current phasePossible values:
Active- Schedule is runningSuspended- Schedule is suspended viaspec.suspend
Last time a backup was triggered
When the next backup will be triggered
Name of the most recently created RedisBackup resourceExample:
my-scheduled-backup-20260228100000Latest available observations
Backup Naming
Created RedisBackup resources follow this naming pattern:- ScheduledBackup name:
hourly-backups - Generated backup name:
hourly-backups-20260228143000
YYYYMMDDHHmmss (UTC)
History Management
The controller automatically prunes old backup resources based on:successfulBackupsHistoryLimit- Retains N most recent successful backupsfailedBackupsHistoryLimit- Retains N most recent failed backups
RedisBackup resource. Object storage cleanup must be handled separately (e.g., via S3 lifecycle policies).
Suspend Behavior
Whenspec.suspend is set to true:
- Status phase transitions to
Suspended - No new backups are scheduled
nextScheduleTimeis cleared- In-progress backups continue to completion
- Existing RedisBackup resources are not deleted
spec.suspend back to false resumes the schedule.