Skip to content
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

support azure file snapshot #3151

Open
andyzhangx opened this issue Nov 9, 2018 · 25 comments
Open

support azure file snapshot #3151

andyzhangx opened this issue Nov 9, 2018 · 25 comments
Assignees
Labels
Area/Cloud/Azure Enhancement/User End-User Enhancement to Velero Help wanted Icebox We see the value, but it is not slated for the next couple releases. kind/requirement Reviewed Q2 2021 Volumes Relating to volume backup and restore

Comments

@andyzhangx
Copy link

Currently azure cloud provide only supports azure disk snapshot, and azure file plugin is also a common storage layer which could provide multiple read/write.
Azure file snapshot doc:
https://docs.microsoft.com/en-us/azure/storage/files/storage-snapshots-files

@rosskukulinski

I could also do the code review work of all azure part since I have been working on k8s on azure storage for a long time.

@ncdc
Copy link
Contributor

ncdc commented Nov 9, 2018

@andyzhangx what would the mechanics be around restores? With Azure managed disks, for example, we create a new managed disk from a snapshot and associate that with the Kubernetes PersistentVolume. Could we do something similar with Azure files - can we create a new "share" from a snapshot and associate that with a PV? Or how would you envision this working? Thanks!

@andyzhangx
Copy link
Author

Yes, azure file pvc is like azure disk pvc. It's using different protocol and support multiple readwrite.
And its apiVersion requires >= 2017-04-17, see RESET api here:
https://docs.microsoft.com/en-us/rest/api/storageservices/snapshot-share

@moebius87
Copy link

Hi @ncdc , is there any good news about this issue? Thank you!

@skriss
Copy link
Member

skriss commented Apr 24, 2019

@moebius87 nobody has picked this up to work on it, but it sounds like there's a good chance that a plugin could be developed for this. I'm happy to do a little R&D and provide some direction if someone wants to work on it!

@andyzhangx
Copy link
Author

Update: we are already implementing azure file snapshot functionality in https://github.com/kubernetes-sigs/azurefile-csi-driver, currently azure file does not provide a restore sdk for this functionality, and we are expecting azure file team to provide a v2 sdk to cover this functionality. I think we could wait until that restore function is released, stay tuned.

@skriss skriss transferred this issue from vmware-tanzu/velero Nov 8, 2019
@skriss
Copy link
Member

skriss commented Nov 13, 2019

@andyzhangx any update on the restore SDK? There have been several folks inquiring about Azure File support lately, and they're having to default to using restic since we don't have a snapshotter plugin.

@andyzhangx
Copy link
Author

andyzhangx commented Nov 30, 2019

@andyzhangx any update on the restore SDK? There have been several folks inquiring about Azure File support lately, and they're having to default to using restic since we don't have a snapshotter plugin.

No update from azure file team now, I will let you know when that feature is released. @skriss

@pimjansen
Copy link

Also really need this! There is no way to properly snapshot/backup my azurefile at this point

@fredgate
Copy link

Yes, it's a big lack.

@RuBiCK
Copy link

RuBiCK commented Sep 25, 2020

Any update on this? I really need this feature and I would like to know if it's on the roadmap

@RuBiCK
Copy link

RuBiCK commented Sep 30, 2020

For those who are looking at velero for solve this issue, there is a workaround: Velero Restic plugin so restic will be in charge to backup file shares just with a POD annotation.
I haven't tested yet. I'll let you know in the few weeks when I test it

@kwaazaar
Copy link

kwaazaar commented Oct 29, 2020

To use restic for a specific pod, add an annotation to specify which volumes to include:

backup.velero.io/backup-volumes: "data"

Velero restore-process remains the same.

I prefer this opt-in model. Read more here.

@nrb nrb transferred this issue from vmware-tanzu/velero-plugin-for-microsoft-azure Dec 7, 2020
@nrb nrb added Area/Cloud/Azure Enhancement/User End-User Enhancement to Velero Help wanted Volumes Relating to volume backup and restore labels Dec 7, 2020
@eleanor-millman eleanor-millman added the Icebox We see the value, but it is not slated for the next couple releases. label May 3, 2021
@felfa01
Copy link

felfa01 commented Nov 29, 2021

Do you have an update on this much sought-after feature? Would be great to understand the timeline for when this becomes available.

@IQNeoXen
Copy link

IQNeoXen commented Feb 8, 2022

Any news on this? Would be really nice to have this implemented

@rajeevpnair
Copy link

Any update on this ? we are really looking for an option to do csi snapshot backups for azure files..

@reasonerjt reasonerjt removed Help wanted Area/Cloud/Azure Enhancement/User End-User Enhancement to Velero Volumes Relating to volume backup and restore Reviewed Q2 2021 labels May 20, 2022
@reasonerjt reasonerjt added kind/requirement Icebox We see the value, but it is not slated for the next couple releases. Reviewed Q2 2021 Volumes Relating to volume backup and restore Enhancement/User End-User Enhancement to Velero Area/Cloud/Azure Help wanted and removed Icebox We see the value, but it is not slated for the next couple releases. labels May 20, 2022
@eleanor-millman eleanor-millman added the 1.10-candidate The label used for 1.10 planning discussion. label May 25, 2022
@reasonerjt
Copy link
Contributor

@ywk253100 probably this can be handled by CSI plugin? Could you verify?

@andyzhangx
Copy link
Author

@ywk253100 probably this can be handled by CSI plugin? Could you verify?

azure file csi driver only supports snapshot, while does not support restore since current azure file API only supports in-place restore, not CSI spec compliant way, here is the tracking issue: kubernetes-sigs/azurefile-csi-driver#136

@reasonerjt
Copy link
Contributor

@andyzhangx
But I believe eventually this has to be resolved in 1.27? Could you share some insights?

@reasonerjt reasonerjt removed the 1.10-candidate The label used for 1.10 planning discussion. label Jun 28, 2022
@davidkarlsen
Copy link

It's been a while - any update @andyzhangx?
And would this work when you use:

parameters:
  protocol: nfs

in the storage-class?

Is azure-files still a thing or being killed in favour of NetApp given that there is no movement?

@andyzhangx
Copy link
Author

It's been a while - any update @andyzhangx? And would this work when you use:

parameters:
  protocol: nfs

in the storage-class?

Is azure-files still a thing or being killed in favour of NetApp given that there is no movement?

@davidkarlsen there is a way to support smb file share restore using azcopy, here is a draft PR: kubernetes-sigs/azurefile-csi-driver#1466, and for nfs file share, the snapshot feature is only supported on Azure canary region now

@draghuram
Copy link
Contributor

Just a quick note to add that at CloudCasa, we implemented a work around where we used Azure APIs to directly read from the snapshot, instead of depending on CSI. This is used in couple of places: For backups, we take CSI snapshot first and then using our work around, we get the data from snapshot and copy to S3. Similar logic is used for restores as well. So for end users, it looks seamless though it would have been much better had CSI "volume from snapshot" is implemented.

From what I hear, the problem is not with the CSI driver but with the underlying Azure Files functionality itself. If that is the case, I doubt we will have this feature implemented any time soon, though I could be wrong.

@maulik13
Copy link

It's been a while - any update @andyzhangx? And would this work when you use:

parameters:
  protocol: nfs

in the storage-class?
Is azure-files still a thing or being killed in favour of NetApp given that there is no movement?

@davidkarlsen there is a way to support smb file share restore using azcopy, here is a draft PR: kubernetes-sigs/azurefile-csi-driver#1466, and for nfs file share, the snapshot feature is only supported on Azure canary region now

Is the mentioned PR going to be merged any time soon?

@andyzhangx
Copy link
Author

It's been a while - any update @andyzhangx? And would this work when you use:

parameters:
  protocol: nfs

in the storage-class?
Is azure-files still a thing or being killed in favour of NetApp given that there is no movement?

@davidkarlsen there is a way to support smb file share restore using azcopy, here is a draft PR: kubernetes-sigs/azurefile-csi-driver#1466, and for nfs file share, the snapshot feature is only supported on Azure canary region now

Is the mentioned PR going to be merged any time soon?

@maulik13 we are still reviewing the azcopy design.

@felfa01
Copy link

felfa01 commented Feb 1, 2024

Given that AzureFile NFS supports Snapshots, is this something that can be supported from Velero side?

@draghuram
Copy link
Contributor

Velero can even today take snapshot of AzureFile PVCs. The problem is that restore cannot be supported because AzureFile CSI driver doesn't support creation of a PVC from snapshot. For the same reason, snapshot data mover backups won't work either. We, at CloudCasa, have added workaround by directly interacting with Azure Portal and thus, supporting both.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area/Cloud/Azure Enhancement/User End-User Enhancement to Velero Help wanted Icebox We see the value, but it is not slated for the next couple releases. kind/requirement Reviewed Q2 2021 Volumes Relating to volume backup and restore
Projects
None yet
Development

No branches or pull requests