gluster / glusterfs

Gluster Filesystem : Build your distributed storage in minutes
https://www.gluster.org
GNU General Public License v2.0
4.65k stars 1.08k forks source link

volume set: failed: option : nfs.disable does not exist #4409

Open thebigbone opened 1 week ago

thebigbone commented 1 week ago

Description of problem: I am trying to use NFS to mount gluster volumes on ubuntu client. I have tried connecting using the -o ver=3 flag but it gives me this error: mount.nfs: requested NFS version or transport protocol is not supported

The exact command to reproduce the issue: sudo gluster volume set <VOLUME_NAME> nfs.disable off

The full output of the command that failed:

Gluster NFS is being deprecated in favor of NFS-Ganesha Enter "yes" to continue using Gluster
NFS (y/n) yes  
volume set: failed: option : nfs.disable does not exist
Did you mean dht.force-readdirp?

Expected results: Turn off the nfs.disable parameter.

Mandatory info: - The output of the gluster volume info command:

Volume Name: gv0
Type: Replicate
Volume ID: ccddba3f-a3d7-4c25-b7ee-6606618da801
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 3 = 3
Transport-type: tcp
Bricks:
Brick1: host1:/data/brick1/gv0
Brick2: host2:/data/brick1/gv0
Brick3: host3:/data/brick1/gv0
Options Reconfigured:
auth.allow: client1
cluster.granular-entry-heal: on
storage.fips-mode-rchecksum: on
transport.address-family: inet
nfs.disable: on
performance.client-io-threads: off

- The output of the gluster volume status command:

Status of volume: gv0
Gluster process                             TCP Port  RDMA Port  Online  Pid
------------------------------------------------------------------------------
Brick host1:/data/brick1/gv0       52185     0          Y       7081 
Brick host2:/data/brick1/gv0        53179     0          Y       8097 
Brick host3:/data/brick1/gv0        54494     0          Y       6280 
Self-heal Daemon on localhost               N/A       N/A        Y       8129 
Self-heal Daemon on minor                   N/A       N/A        Y       7113 
Self-heal Daemon on train                   N/A       N/A        Y       6312 

Task Status of Volume gv0
------------------------------------------------------------------------------
There are no active volume tasks

- Provide logs present on following locations of client and server nodes - /var/log/glusterfs/

[2024-09-10 06:29:06.063238 +0000] E [MSGID: 106025] [glusterd-op-sm.c:1204:glusterd_op_stage_set_volume] 0-management: Option with name: nfs.disable does not exist 
[2024-09-10 06:29:06.063451 +0000] E [MSGID: 106301] [glusterd-syncop.c:2065:gd_stage_op_phase] 0-management: Staging of operation 'Volume Set' failed on localhost : option : nfs.disable does not exist
Did you mean dht.force-readdirp? 
[2024-09-10 06:30:38.547092 +0000] E [MSGID: 106025] [glusterd-op-sm.c:1204:glusterd_op_stage_set_volume] 0-management: Option with name: nfs.disable does not exist 
[2024-09-10 06:30:38.547392 +0000] E [MSGID: 106301] [glusterd-syncop.c:2065:gd_stage_op_phase] 0-management: Staging of operation 'Volume Set' failed on localhost : option : nfs.disable does not exist
Did you mean dht.force-readdirp? 
[2024-09-10 06:33:31.300103 +0000] E [MSGID: 106025] [glusterd-op-sm.c:1204:glusterd_op_stage_set_volume] 0-management: Option with name: nfs.disable does not exist 
[2024-09-10 06:33:31.300444 +0000] E [MSGID: 106301] [glusterd-syncop.c:2065:gd_stage_op_phase] 0-management: Staging of operation 'Volume Set' failed on localhost : option : nfs.disable does not exist
Did you mean dht.force-readdirp? 

- Is there any crash ? Provide the backtrace and coredump No.

- The operating system / glusterfs version: glusterfs version: 11.1 OS: Fedora 39 (Cloud edition)

uname -a
Linux 6.10.7-100.fc39.x86_64 #1 SMP PREEMPT_DYNAMIC Fri Aug 30 00:07:39 UTC 2024 x86_64 GNU/Linux
mykaul commented 1 week ago

Did you build Gluster by yourself? Perhaps without NFS support?

thebigbone commented 1 week ago

Did you build Gluster by yourself? Perhaps without NFS support?

No, I installed the package from fedora repository using dnf.

seepine commented 6 days ago

I has the same problem of ubuntu24 by sudo apt install glusterfs-server

mykaul commented 6 days ago

I do believe it was built without legacy NFS. From https://kojipkgs.fedoraproject.org//packages/glusterfs/11.1/1.fc39/data/logs/x86_64/build.log :

GlusterFS configure summary
===========================
FUSE client          : yes
epoll IO multiplex   : yes
fusermount           : yes
readline             : yes
georeplication       : yes
Linux-AIO            : yes
Linux io_uring       : yes
Use liburing         : yes
Enable Debug         : no
Run with Valgrind    : no
Sanitizer enabled    : none
XML output           : yes
Unit Tests           : no
Track priv ports     : yes
POSIX ACLs           : yes
SELinux features     : yes
firewalld-config     : yes
Events               : yes
EC dynamic support   : x64 sse avx
Use memory pools     : no
Nanosecond m/atimes  : yes
Server components    : yes
Legacy gNFS server   : no   <---------------
IPV6 default         : no
Use TIRPC            : yes
With Python          : 3.12
Cloudsync            : yes
Metadata dispersal   : no
Link with TCMALLOC   : yes
Enable Brick Mux     : no
Building with LTO    : yes
thebigbone commented 6 days ago

I do believe it was built without legacy NFS. From https://kojipkgs.fedoraproject.org//packages/glusterfs/11.1/1.fc39/data/logs/x86_64/build.log :

GlusterFS configure summary
===========================
FUSE client          : yes
epoll IO multiplex   : yes
fusermount           : yes
readline             : yes
georeplication       : yes
Linux-AIO            : yes
Linux io_uring       : yes
Use liburing         : yes
Enable Debug         : no
Run with Valgrind    : no
Sanitizer enabled    : none
XML output           : yes
Unit Tests           : no
Track priv ports     : yes
POSIX ACLs           : yes
SELinux features     : yes
firewalld-config     : yes
Events               : yes
EC dynamic support   : x64 sse avx
Use memory pools     : no
Nanosecond m/atimes  : yes
Server components    : yes
Legacy gNFS server   : no   <---------------
IPV6 default         : no
Use TIRPC            : yes
With Python          : 3.12
Cloudsync            : yes
Metadata dispersal   : no
Link with TCMALLOC   : yes
Enable Brick Mux     : no
Building with LTO    : yes

Oh, that's the reason. To enable NFS, compiling with --enable-gnfs flag should work right?

mykaul commented 6 days ago

Oh, that's the reason. To enable NFS, compiling with --enable-gnfs flag should work right?

Yes, but to be honest, I warmly suggest using NFS Ganesha.