-
Notifications
You must be signed in to change notification settings - Fork 145
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat(backup): multiple backup stores support #2182
base: master
Are you sure you want to change the base?
Conversation
This pull request is now in conflicts. Could you fix it @mantissahz? 🙏 |
This pull request is now in conflicts. Could you fix it @mantissahz? 🙏 |
a782b93
to
142535f
Compare
Is this ready for review? |
@innobead Yes, but LEP longhorn/longhorn#6630 is still in review. |
c1e1178
to
4cdb679
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Still reviewing, but one question already.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just a couple of minor things.
4e67c1e
to
fe4d30c
Compare
Introduce a new filed `BackupTargetName` in `Volume.Spec` to point out where the volume will be backed up to. ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
List backup volume CRs using a backup target name. List backup volume CRs using a volume name. Get a backup volume using a backup target name and a volume name. Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
89cf826
to
29b1cbf
Compare
Add the backup target mutator and add the finalizer into the backupTarget CR when mutating. ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Add the volume mutation and validation to handle the field `Spec.BackupTargetName`. Add a new label "backup-target". Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Add fields `Spec.BackingImage` and `Spec.BackupTargetName` in the BackupBackingImage CRD Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
1. Add the deleting function. 2. Modify the synchronizing backup volumes and backup backing images from a backup target methods. 3. `sets.String` is deprecated and use generic `Set` instead Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Move backupTimer from setting controller to backup target controller Move AWS IAM Role Annotation logic to datastore/kubernetes.go Ref: 5411, 6947 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Remove adding `backup-target` back when node is updated. Remove backup targets when uninstalling. ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Introduce a new filed `BackupTargetName` in `Volume.Spec` to point out where the volume will be backed up to. ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Modify backup volume controller to support multiple backup stores support. Synchronize and handle the backup volumes information from different backup targets with the same backup volume name or not. Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Modify backup controller to support multiple backup stores support. Synchronize and handle the backup information from different backup targets with the same backup volume name or not. Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
3aa2730
to
50c6d74
Compare
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
add the method to get the correct BackupVolume with the volume name and backup target name for the recurring job and related data strucurtes of APIs. Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Add more parameters in creating BackupVolume for testing volume_controller.go Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Add more parameters in creating BackupVolume for testing volume_controller.go Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Upgrade CRs for Volume, BackupVolume, Backup, BackupBackingImage, and BackingImageDataSource. Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
Ref: 5411 Signed-off-by: James Lu <james.lu@suse.com>
50c6d74
to
442d9f4
Compare
Support multiple backup stores to create, delete and update them.
Remove the
default
backup target instead usingDefault
flag inBackupTarget
CR spec.Adding a flag
ReadOnly
inBackupTarget
CR spec prevent backups from being created and storing on this remote backup target.And provide HTTP endpoints to create, delete, update and list secrets.
Ref: longhorn/longhorn#5411