LXD CephFS volume export results in error: 'Not implemented'

Hi,

We have 3 Ceph nodes running. Recently we updated lxd from 4.11 to 4.16 because exporting volumes resulted in the error ‘Not implemented’. Unfortunately this didn’t do the trick.

I found this post which seems to be somewhat related: LXD CephFS 'Not implemented' error
Though that thread is about instances, not custom volumes.

Running: lxc storage volume export cephfs VOLUME
Results in:
Error: Create volume backup: Backup create: Not implemented

The logs tell me:

   DBUG[08-17|11:12:03] Adding backup index file                 name=fe7b1966-ea52-4b6f-aee6-f5b05bd17c8f/backup0 project=default storage_volume=fe7b1966-ea52-4b6f-aee6-f5b05bd17c8f
   DBUG[08-17|11:12:03] Started backup tarball writer            name=fe7b1966-ea52-4b6f-aee6-f5b05bd17c8f/backup0 project=default storage_volume=fe7b1966-ea52-4b6f-aee6-f5b05bd17c8f
   DBUG[08-17|11:12:03] BackupCustomVolume started               snapshots=true volume=fe7b1966-ea52-4b6f-aee6-f5b05bd17c8f driver=cephfs optimized=false pool=cephfs project=default
   DBUG[08-17|11:12:03] BackupCustomVolume finished              snapshots=true volume=fe7b1966-ea52-4b6f-aee6-f5b05bd17c8f driver=cephfs optimized=false pool=cephfs project=default
   DBUG[08-17|11:12:03] Volume backup finished                   storage_volume=fe7b1966-ea52-4b6f-aee6-f5b05bd17c8f name=fe7b1966-ea52-4b6f-aee6-f5b05bd17c8f/backup0 project=default
   DBUG[08-17|11:12:03] Failure for task operation: 8c6668bc-b65e-4006-8c55-84a8a9a0852c: Create volume backup: Backup create: Not implemented

Exporting Ceph volumes does work though, it seems to only be CephFS volumes that cannot be exported.
I feel like I’m missing something. Exporting custom CephFS volumes should be supported right?

Any tips are welcome!

Hi,

I think you maybe hitting this change:

Is the volume you’re trying to export a block volume by any chance?

Hmm well I guess it’s type Filesystem, since it’s Cephfs.
Or maybe I’m not understanding you correctly.

Ceph custom volumes export just fine though.
And reading the logs, it seems lxd does create a backup, it even says it’s finished only to error after that.

Ah yes indeed, looking at the code CephFS volume export hasn’t been implemented at all yet:

I’ve updated Support custom block and filesystem export for all drivers · Issue #9064 · lxc/lxd · GitHub to track this missing feature.

Ah shoot how did I miss that. That’s a bummer!
Thanks for taking a look.

I’m wondering. Wouldn’t genericVFSBackupVolume do the trick, just as for Ceph volumes?

Not my area of expertise and maybe a bit off topic but I can give it a try anyway.

Yes it should do - at least for normal filesystem volumes (i.e not VMs or block custom volumes).
We would also need to implement CreateVolumeFromBackup lxd/driver_ceph_volumes.go at master · lxc/lxd · GitHub too.

If you’re able to test it and create a PR that would be great.

For block volumes we need to go through each driver and check the export works, as without the explicit block I put in some of them silently succeed without actually exporting anything at the moment.