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

On 1/15/21 6:50 AM, rainer.stumbaum@gmail.com wrote:
> 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 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