Bug 763117 (GLUSTER-1385)

Summary: showmount says no access though it can be mounted.
Product: [Community] GlusterFS Reporter: Lakshmipathi G <lakshmipathi>
Component: nfsAssignee: Shehjar Tikoo <shehjart>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: medium Docs Contact:
Priority: low    
Version: 3.1-alphaCC: dgopal, gluster-bugs
Target Milestone: ---   
Target Release: ---   
Hardware: All   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: Type: ---
Regression: RTP Mount Type: nfs
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:

Description Lakshmipathi G 2010-08-16 22:54:05 EDT
volume files
============
volume posix
    type storage/posix
#   option o-direct enable # (default: disable) boolean type only
#   option export-statfs-size no # (default: yes) boolean type only
#   option mandate-attribute off # (default: on) boolean type only
#   option span-devices 8 # (default: 0) integer value
#   option background-unlink yes # (default: no) boolean type
    option directory /mnt/laks
end-volume

volume posix-ac
    type features/access-control
    subvolumes posix
end-volume

volume locks
    type features/locks
#   option mandatory on # Default off, used in specific applications
    subvolumes posix-ac
end-volume

volume /mnt/laks
    type performance/io-threads
    option thread-count 8
#   option autoscaling yes # Heuristic for autoscaling threads on demand
#   option min-threads 2 # min count for thread pool
#   option max-threads 64 # max count for thread pool
    subvolumes locks
end-volume

volume server-tcp
    type protocol/server
    option transport-type tcp
    option auth.addr./mnt/laks.allow *
    option transport.socket.nodelay on
    subvolumes /mnt/laks
end-volume
=============
# RAID 1
# TRANSPORT-TYPE tcp
volume ec2-75-101-204-250.compute-1.amazonaws.com-1
    type protocol/client
    option transport-type tcp
    option remote-host ec2-75-101-204-250.compute-1.amazonaws.com
    option transport.socket.nodelay on
    option remote-subvolume /mnt/laks/
end-volume

volume ec2-204-236-197-168.compute-1.amazonaws.com-1
    type protocol/client
    option transport-type tcp
    option remote-host ec2-204-236-197-168.compute-1.amazonaws.com
    option transport.socket.nodelay on
    option remote-subvolume /mnt/laks
end-volume

volume ec2-75-101-218-254.compute-1.amazonaws.com-1
    type protocol/client
    option transport-type tcp
    option remote-host ec2-75-101-218-254.compute-1.amazonaws.com
    option transport.socket.nodelay on
    option remote-subvolume /mnt/laks
end-volume

volume ec2-72-44-60-35.compute-1.amazonaws.com-1
    type protocol/client
    option transport-type tcp
    option remote-host ec2-72-44-60-35.compute-1.amazonaws.com
    option transport.socket.nodelay on
    option remote-subvolume /mnt/laks
end-volume

volume mirror
    type cluster/replicate
    subvolumes ec2-75-101-204-250.compute-1.amazonaws.com-1 ec2-204-236-197-168.compute-1.amazonaws.com-1 ec2-75-101-218-254.compute-1.amazonaws.com-1 ec2-72-44-60-35.compute-1.amazonaws.com-1
end-volume

volume writebehind
    type performance/write-behind
    option cache-size 4MB
#   option enable-trickling-writes yes # Flush final write calls when network is free
#   option enable-O_SYNC yes # Enable O_SYNC for write-behind
#   option disable-for-first-nbytes 1 # Disable first nbytes with very small initial writes
    subvolumes mirror
end-volume

volume readahead
    type performance/read-ahead
    option page-count 4
#   option force-atime-update yes # force updating atimes, default off
    subvolumes writebehind
end-volume

volume iocache
    type performance/io-cache
    option cache-size `echo $(( $(grep 'MemTotal' /proc/meminfo | sed 's/[^0-9]//g') / 5120 ))`MB
    option cache-timeout 1
#   option priority *.html:1,abc*:2 # Priority list for iocaching files
    subvolumes readahead
end-volume

volume quickread
    type performance/quick-read
    option cache-timeout 1
    option max-file-size 64kB
    subvolumes iocache
end-volume

volume statprefetch
    type performance/stat-prefetch
    subvolumes quickread
end-volume

volume nfsxlator
    type nfs/server
    subvolumes statprefetch
#   option rpc-auth.auth-unix         off  #Enabled by default
#   option rpc-auth.auth-null         off  #Enabled by default
#   By default all addresses are rejected until allowed.
#   option rpc-auth.addr.reject       127.*
#   option rpc-auth.addr.allow        localhost
    option rpc-auth.addr.mirror.allow *
#   By default insecure ports are not allowed.
#   option rpc-auth.ports.insecure    on
#   option rpc-auth.ports.<volume>.insecure  on
#   By default all access is read-write.
#   option nfs3.<volume>.volume-access       read-only
#   option nfs3.<volume>.volume-access       read-only
#   option nfs3.read-size             128Kb
#   option nfs3.write-size            32Kb
#   option nfs3.readdir-size          64Kb
#   option nfs3.<volume>.read-size    64Kb
#   option nfs3.<volume>.write-size   64Kb
#   option nfs3.posix1.readdir-size   128Kb
end-volume

===================
Comment 1 Lakshmipathi G 2010-08-17 01:45:19 EDT
While checking nfs server (with any setup with all perf.trans. enabled with version 3.1.0qa5-15-gc87c868) with showmount  displays "No Access"

$showmount -e localhost
Export list for localhost:
/statprefetch No Access

Thought it be  can mounted under client and works fine.
Comment 2 Shehjar Tikoo 2010-11-08 22:20:38 EST
*** Bug 1906 has been marked as a duplicate of this bug. ***
Comment 3 Anand Avati 2010-11-09 02:12:18 EST
PATCH: http://patches.gluster.com/patch/5658 in master (mnt3: Fail mount requests for disallowed clients)
Comment 4 Lakshmipathi G 2010-11-10 22:11:48 EST
verified with 3.1.1qa5.

When showmount says "no access" -mount fails.
# showmount -e 192.168.1.158
Export list for 192.168.1.158:
/qa5 No Access

[root@space laks]# mount 192.168.1.158:/qa5 /mnt
mount.nfs: access denied by server while mounting 192.168.1.158:/qa5