-
Notifications
You must be signed in to change notification settings - Fork 81
Description
Describe the feature you'd like to have.
Currently the trigger schedule directive on ReplicationSource
supports a crontab style schedule or a static directive such as daily
, yearly
etc.
For those that are using a templatized ReplicationSource
, many PVCs will inherit the schedule from a single template and therefore have the same trigger time, leading to many backup operations being triggered at the same time.
See example of such a template here: https://github.com/adampetrovic/home-ops/blob/main/kubernetes/templates/volsync/minio.yaml#L34
Some cron implementations use H
as a hashed substitution for a value:
'H' is used in the Jenkins continuous integration system to indicate that a "hashed" value is substituted. Thus instead of a fixed number such as '20 * * * *' which means at 20 minutes after the hour every hour, 'H * * * *' indicates that the task is performed every hour at an unspecified but invariant time for each task. This allows spreading out tasks over time, rather than having all of them start at the same time and compete for resources
With this approach, volsync could take the name of the job as the hash value to evaluate to say a minute within the hour.
What is the value to the end user? (why is it a priority?)
Better load spreading of backups
How will we know we have a good solution? (acceptance criteria)
A user is able to defer random execution / jitter of backup times to the volsync operator instead of having to manage it themselves.
Additional context
Metadata
Metadata
Assignees
Labels
Type
Projects
Status