mayastor
mayastor copied to clipboard
Snapshot support in Mayastor
Description
Provide some method of snapshotting a volume (without requiring the workload to be shutdown) as well as creating a new volume from the snapshot and rolling back the volume to the snapshot.
Context
We require this for entire cluster backups without stopping customer workloads as well as features for our users.
@kmova here's the issue you requested. This is super important for us.
Thank you @andyjeffries got it. Added to the upcoming release.
Hey @kmova just checking in on this one, as it doesn't seem to have moved status and it's likely our biggest feature needed for our full migration.
Hi @andyjeffries snapshot support in mayastor is currently in the roadmap. For now, you can use velero-restic to backup/restore mayastor volumes.
We have verified the backup/restore of mayastor volumes with the new mayastor-control-plane using velero v1.7. Restore in the same cluster(in a different namespace) and the different cluster is working fine.
We will keep you updated on the mayastor snapshot feature.
The problem as I understand it is that Velero requires suspending of writes in order to perform the backups if there is no snapshot support. This causes our Kubevirt VMs to pause and requires manual intervention to restart the VMs. Obviously we can't do that across thousands of customer VMs in an automated fashion ;-)
I look forward to updates and hope it's released soon.
hi, @mynktl @kmova I saw in the dataplane of Mayastor, snapshot has already been implemented. But in mayastor csi, snapshot related operations still tagged "Not implemented". Are there any issues blocked this feature? or do you have a recent schedule on snapshot feature?
Tentatively targeting an alpha version of this functionality for Q4 2022
Any news on this?
Also curious if there's been any progress on this feature.
It's still under known limitations... https://mayastor.gitbook.io/introduction/known-limitations
Why was this issue closed?
Not sure why this one was closed tbh.. We've recently started working on snapshots and will have the first stage of snapshots release soon allowing snapshot creation via CSI. Consumption of snapshot as read-only is only available as testing for the moment. Creating volumes with snapshots as source will be available also soon but a little later as that part has only just began being developed. Rolling back a volume to the snapshot (rather than creating a new volume from the snapshot) is not on the plans at the moment, AIUI it's not on CSI? would this something worth pursuing?
Mostly I'm looking for snapshots to use for "point in time" backups via volsync/restic. Rollback isn't something I would need.
Same here. We want to use point-in-time snapshots with Kasten (K10) backups. Hopefully, this feature is soon available! Is there a release date already scheduled?
Hi folks, I run Product Mgmt for Datacore and the OpenEBS product. I wanted to make a more official statement on OpenEBS Snapshots. - Yes, we're adding Volume snapshots to OpenEBS Mayastor product stack. The code is actually complete and we've been doing internal testing for the past few months now. We're currently shaking down 2 small issues (that may/may-not be snapshot related... so we're being thorough in our testing of this new enterprise feature). We are preparing to drop the code soon (could be in the next 2 weeks if things go well).
- There will be a few small conservative caveats for this initial release of Snapshots, but over-all we're super excited to be releasing this major feature to the community.
- Please fee free to reach out to me at my Datacore email ( [email protected] ) if you'd like to discuss this feature more; or you can post comments here. The Datacore email is preferred & will get a much quicker response.
close? Looks like its in 2.3 ?
Not quite, we're missing create volume from snapshot via CSI, so you can create snapshot but can't use it via CSI yet. This should be released soon. I'll update this ticket when it is released.
@tiagolobocastro eagerly awaiting being able to use the snapshots 😁
Out of interest is there any kind of timeline on multi replica snapshots?
Sorry folks was on PTO when the release happened so forgot to ping, Single-replica volume snapshots and restores (snapshot clone) are out on 2.4. Stay tuned for multi-replica volume snapshots.
Any updates on multi-replica snapshots? Is there another issue to track it?
For ref, here's the 2.4 documentation on creating snapshots: https://mayastor.gitbook.io/introduction/advanced-operations/snapshot
Restoring: https://mayastor.gitbook.io/introduction/advanced-operations/snapshot-restore
I have not found a separate issue tracking multi-replica snapshot restores. I guess it's this one?
Mayastor docs states:
When a snapshot is created on a thick-provisioned volume, the storage system automatically converts it into a thin-provisioned volume.
But trying to use volsync I get the error
SvcError :: ClonedSnapshotVolumeThin: Cloned snapshot volumes must be thin provisioned
Edit: Managed to get it working by adding the parameter thin:true to the storage class
For ref, here's the 2.4 documentation on creating snapshots: https://mayastor.gitbook.io/introduction/advanced-operations/snapshot
Restoring: https://mayastor.gitbook.io/introduction/advanced-operations/snapshot-restore
I have not found a separate issue tracking multi-replica snapshot restores. I guess it's this one?
Probably makes sense to keep this one I guess, but happy if anyone wants to close and reopen a new one!
Mayastor docs states:
When a snapshot is created on a thick-provisioned volume, the storage system automatically converts it into a thin-provisioned volume.
But trying to use volsync I get the error
SvcError :: ClonedSnapshotVolumeThin: Cloned snapshot volumes must be thin provisioned
Edit: Managed to get it working by adding the parameter thin:true to the storage class
Yes for clones you need an explicit thin storage class. We've considered users may want a thick clone so in the future it might be possible to inflate as part of the clone, so it becomes a thick volume again.
Is there any info about this? Would be nice to have replicas with snapshots
Currently, Mayastor only supports snapshots for volumes with a single replica. Snapshot support for volumes with more than one replica will be available in the future versions.
Hi @MrMarble, soon after we launch the next version (soon, finishing testing now) we'll be writing and publishing a roadmap, for mayastor and openebs. And multi-replica snapshots would appear in that roadmap.
Hi @MrMarble, soon after we launch the next version (soon, finishing testing now) we'll be writing and publishing a roadmap, for mayastor and openebs. And multi-replica snapshots would appear in that roadmap.
Hi, @tiagolobocastro
Do we have any updates on this? I saw in the roadmap something about Q1 2024.
Since there is a snapshot/restore feature, can we say that it's velero compatible (without restic)?
Hi @reddec - We recently tested an E2E working proof for Snapshot integration with VEEAM K10 Backup.
- It worked very well and we'll be productizing that Data Protection solution very soon.
We have not yet tested Velero, but... since VEEAM snapshot integration works... its very likely that Velero will also work.
If you are able to test Velero with the latest version of OpenEBS Mayastor v2.6.1... then there's a very high chance of success. I'm looping in Ranajith on our team - @r1jt
- @r1jt ran the project to test/validate Snapshot integration with VEEAM K10 a couple of weeks ago.
Also cc: @avishnu @Abhinandan-Purkait @niladrih @tiagolobocastro
Cheers, ~Dave
Hey !
I'm currently running Mayastor v2.6.1, and for 5 months I've been running velero-plugin-for-csi to backup Mayastor volumes to S3.
I can confirm that everything works just fine using VolumeSnapshotClass
and Velero integration.