Looks suspiciously like the ganesha packages from download.nfs-ganesha.org. Which were built with the ceph packages that were available from the mirrors.edge.kernel.org/debian repos at the time, (early October 2020) And that was ceph-12.2.11+dfsg1-2.1+b1. As far as "official" Debian ceph packages go that seems to be the latest AFAICT. On Fri, Jan 15, 2021 at 10:38 AM Daniel Gryniewicz <dang@redhat.com> wrote:
So, what matters is the version of Ceph that Ganesha was built against, not the version you're running against. 14.2 should be new enough to have ceph_select_filesystem() (which is the API in question. Where did you get the Ganesha packages, who built them, and which version of libcephfs was used when they were built?
Daniel
Hi,
I am running a Debian 10 with root@nfsshares-a:~# dpkg -l | grep ganesha ii nfs-ganesha 3.3-4 amd64 nfs-ganesha is a NFS server in User Space ii nfs-ganesha-ceph:amd64 3.3-4 amd64 nfs-ganesha fsal ceph libraries ii nfs-ganesha-rados-grace:amd64 3.3-4 amd64 nfs-ganesha ganesha-rados-grace program
and
root@nfsshares-a:~# dpkg -l | grep ceph ii ceph-common 14.2.16-pve1 amd64 common utilities to mount and interact with a ceph storage cluster ii libcephfs2 14.2.16-pve1 amd64 Ceph distributed file system client library ii nfs-ganesha-ceph:amd64 3.3-4 amd64 nfs-ganesha fsal ceph libraries ii python-ceph-argparse 14.2.16-pve1 all Python 2 utility libraries for Ceph CLI ii python-cephfs 14.2.16-pve1 amd64 Python 2 libraries for the Ceph libcephfs library
The config looks like this: root@nfsshares-a:~# grep '^[[:blank:]]*[^[:blank:]#;]' /etc/ganesha/ganesha.conf NFS_CORE_PARAM { Enable_NLM = false; Enable_RQUOTA = false; Protocols = 3,4; mount_path_pseudo = true; } NFS_KRB5 { Active_krb5 = false; } NFSv4 { RecoveryBackend = rados_ng; Minor_Versions = 1,2; } MDCACHE { Dir_Chunk = 0; } EXPORT_DEFAULTS { SecType = "sys"; Squash = No_Root_Squash; Attr_Expiration_Time = 0; } CEPH { Ceph_Conf = /etc/ceph/ceph.conf; } RADOS_KV { Ceph_Conf = /etc/ceph/ceph.conf; UserId = "ganesharecov"; nodeid = "nfsshares-a"; } RADOS_URLS { Ceph_Conf = /etc/ceph/ceph.conf; UserId = "ganeshaurls"; watch_url = "rados://nfs-ganesha/ganesha-namespace/conf-nfsshares"; } %url rados://nfs-ganesha/ganesha-namespace/conf-nfsshares
The Export configuration is created on the ceph dashboard and looks like
On 1/15/21 6:50 AM, rainer.stumbaum@gmail.com wrote: this:
root@proxmox07:~# cat /tmp/conf-nfsshares %url "rados://nfs-ganesha/ganesha-namespace/export-1"
root@proxmox07:~# cat /tmp/export-1 EXPORT { FSAL { secret_access_key = "AQDm7eFfJWvhIBAAuI++d0SNkdylNkMx5t/N8w=="; user_id = "ganesha"; name = "CEPH"; filesystem = "cephfs"; }
CLIENT { clients = 10.20.56.254; squash = "no_root_squash"; access_type = "RW"; }
pseudo = "/"; squash = "no_root_squash"; access_type = "NONE"; path = "/"; export_id = 1; transports = "UDP", "TCP"; protocols = 4; }
I get the following error message: .... 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] register_callbacks :FSAL :WARN :This libcephfs does not support registering callbacks. Ganesha will be unable to respond to MDS cache pressure. 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] select_filesystem :FSAL :CRIT :This libcephfs version doesn't support named filesystems. 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] mdcache_fsal_create_export :FSAL :MAJ :Failed to call create_export on underlying FSAL Ceph 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] fsal_cfg_commit :CONFIG :CRIT :Could not create export for (/) to (/) 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] main :NFS STARTUP :WARN :No export entries found in configuration file !!! 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] config_errs_to_log :CONFIG :CRIT :Config File ("rados://nfs-ganesha/ganesha-namespace/export-1":2): 1 validation errors in block FSAL 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] config_errs_to_log :CONFIG :CRIT :Config File ("rados://nfs-ganesha/ganesha-namespace/export-1":2): Errors processing block (FSAL) 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] config_errs_to_log :CONFIG :CRIT :Config File ("rados://nfs-ganesha/ganesha-namespace/export-1":1): 1 validation errors in block EXPORT 15/01/2021 12:47:30 : epoch 600180d2 : nfsshares-a : ganesha.nfsd-21185[main] config_errs_to_log :CONFIG :CRIT :Config File ("rados://nfs-ganesha/ganesha-namespace/export-1":1): Errors processing block (EXPORT) ....
When I remove filesystem = "cephfs"; in export-1 it works.
I believe my dashboard does not work together with its version or configuration of the libcephfs2 (both same source and version).
Or did I misconfigure something here?
Best regards and a healthy new year! Rainer _______________________________________________ Support mailing list -- support@lists.nfs-ganesha.org To unsubscribe send an email to support-leave@lists.nfs-ganesha.org
_______________________________________________ Support mailing list -- support@lists.nfs-ganesha.org To unsubscribe send an email to support-leave@lists.nfs-ganesha.org