+++ This bug was initially created as a clone of Bug #1279484 +++ Description of problem: glusterfsd does not support unix domain socket. In case if glusterd is binded to a specific-IP, glusterfsd clients(like quota auxiliary mount) fails. Using unix domain socket glusterfsd will over come the failure. Version-Release number of selected component (if applicable): How reproducible: Always Steps to Reproduce: 1.create and start a volume 2.glusterfs -s <unix socket path> --volfile-server-transport unix --volfile-id <volume-name> <mount-point> Actual results: Fails to communicate using unix domain socket Expected results: It should be able to communicate using unix domain socket Additional info: --- Additional comment from Mohamed Ashiq on 2015-11-09 10:38:25 EST --- Patch: http://review.gluster.org/12556 --- Additional comment from Vijay Bellur on 2015-11-19 07:29:03 EST --- REVIEW: http://review.gluster.org/12556 (glusterfsd: To support volfile-server-transport type "unix") posted (#4) for review on master by Mohamed Ashiq Liyazudeen (mliyazud) --- Additional comment from Vijay Bellur on 2015-11-19 22:59:40 EST --- COMMIT: http://review.gluster.org/12556 committed in master by Atin Mukherjee (amukherj) ------ commit 7fbc38531acbc39369d3b91ba126fc4147ab89d1 Author: Mohamed Ashiq <mliyazud> Date: Mon Nov 9 20:43:17 2015 +0530 glusterfsd: To support volfile-server-transport type "unix" glusterfsd fails if the glusterd is bind to specific-IP address. This patch helps glusterfsd to get the volfile using Unix domain socket. glusterfs -s <unix socket path> --volfile-server-transport unix --volfile-id <volume-name> <mount-point> The patch checks if the volfile-server-transport is of type "unix", If It is then uses rpc_transport_unix_options_build to get the volfile. Change-Id: I81b881e7ac5a3a4f2ac83c789c385cf547f0d53e BUG: 1279484 Signed-off-by: Mohamed Ashiq <mliyazud> Signed-off-by: Humble Devassy Chirammal <hchiramm> Reviewed-on: http://review.gluster.org/12556 Reviewed-by: Atin Mukherjee <amukherj> Reviewed-by: Niels de Vos <ndevos> Tested-by: NetBSD Build System <jenkins.org> Tested-by: Gluster Build System <jenkins.com> --- Additional comment from Vijay Bellur on 2015-11-26 02:10:28 EST --- REVIEW: http://review.gluster.org/12757 (glusterd: glusterfsd to support volfile-server-transport type "unix") posted (#1) for review on master by Manikandan Selvaganesh (mselvaga) --- Additional comment from Vijay Bellur on 2015-11-26 03:10:22 EST --- REVIEW: http://review.gluster.org/12757 (glusterd: glusterfsd to support volfile-server-transport type "unix") posted (#2) for review on master by Manikandan Selvaganesh (mselvaga) --- Additional comment from Vijay Bellur on 2015-11-26 22:41:25 EST --- COMMIT: http://review.gluster.org/12757 committed in master by Atin Mukherjee (amukherj) ------ commit 0db6d57a184ed79eb3142c42957b1a2415744011 Author: Manikandan Selvaganesh <mselvaga> Date: Thu Nov 26 12:32:10 2015 +0530 glusterd: glusterfsd to support volfile-server-transport type "unix" If glusterfsd uses transport type "unix", 'addrstr' can be empty. So, it may fail to fetch the trusted volfile in this case. This patch allows to fetch volfile even if addrstr is empty. Change-Id: I831c5cd0b07b90ae843ec63f0fad9241d9407f6b BUG: 1279484 Signed-off-by: Manikandan Selvaganesh <mselvaga> Signed-off-by: Mohamed Ashiq <mliyazud> Reviewed-on: http://review.gluster.org/12757 Reviewed-by: Vijaikumar Mallikarjuna <vmallika> Tested-by: NetBSD Build System <jenkins.org> Tested-by: Gluster Build System <jenkins.com> Reviewed-by: Niels de Vos <ndevos> Reviewed-by: Atin Mukherjee <amukherj>
Verified this bug with and without fix. Without Fix: ============ [root@ ~]# gluster volume status Status of volume: Dis Gluster process TCP Port RDMA Port Online Pid ------------------------------------------------------------------------------ Brick IP:/bricks/brick0/az0 49152 0 Y 11320 NFS Server on localhost 2049 0 Y 11340 Task Status of Volume Dis ------------------------------------------------------------------------------ There are no active volume tasks [root@ ~]# glusterfs -s /var/run/glusterd.socket --volfile-server-transport unix --volfile-id Dis /mnt [root@ ~]# [root@ ~]# df -Th <<<<<<<<<<<<<<<<<<<<VOLUME NOT MOUNTED Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/rhgs-root xfs 18G 2.9G 15G 17% / devtmpfs devtmpfs 910M 0 910M 0% /dev tmpfs tmpfs 920M 0 920M 0% /dev/shm tmpfs tmpfs 920M 97M 824M 11% /run tmpfs tmpfs 920M 0 920M 0% /sys/fs/cgroup /dev/mapper/RHS_vg1-RHS_lv1 xfs 20G 34M 20G 1% /bricks/brick0 /dev/mapper/RHS_vg2-RHS_lv2 xfs 20G 34M 20G 1% /bricks/brick1 /dev/mapper/RHS_vg4-RHS_lv4 xfs 20G 34M 20G 1% /bricks/brick3 /dev/mapper/RHS_vg3-RHS_lv3 xfs 20G 34M 20G 1% /bricks/brick2 /dev/vda1 xfs 497M 132M 366M 27% /boot tmpfs tmpfs 184M 0 184M 0% /run/user/0 [root@ ~]# [root@ ~]# rpm -qa |grep gluster glusterfs-server-3.7.5-6.el7rhgs.x86_64 gluster-nagios-common-0.2.2-1.el7rhgs.noarch nfs-ganesha-gluster-2.2.0-9.el7rhgs.x86_64 glusterfs-rdma-3.7.5-6.el7rhgs.x86_64 python-gluster-3.7.1-16.el7rhgs.x86_64 glusterfs-3.7.5-6.el7rhgs.x86_64 glusterfs-fuse-3.7.5-6.el7rhgs.x86_64 glusterfs-api-devel-3.7.5-6.el7rhgs.x86_64 glusterfs-client-xlators-3.7.5-6.el7rhgs.x86_64 glusterfs-cli-3.7.5-6.el7rhgs.x86_64 glusterfs-ganesha-3.7.5-6.el7rhgs.x86_64 glusterfs-api-3.7.5-6.el7rhgs.x86_64 glusterfs-geo-replication-3.7.5-6.el7rhgs.x86_64 gluster-nagios-addons-0.2.5-1.el7rhgs.x86_64 glusterfs-libs-3.7.5-6.el7rhgs.x86_64 glusterfs-devel-3.7.5-6.el7rhgs.x86_64 [root@ ~]# With Fix: ========= [root@ ~]# gluster volume status Status of volume: Dis Gluster process TCP Port RDMA Port Online Pid ------------------------------------------------------------------------------ Brick IP:/bricks/brick0/az 49153 0 Y 10813 NFS Server on localhost 2049 0 Y 10854 Task Status of Volume Dis ------------------------------------------------------------------------------ There are no active volume tasks [root@ ~]# glusterfs -s /var/run/glusterd.socket --volfile-server-transport unix --volfile-id Dis /mnt [root@ ~]# df -Th <<<<<<<<<<<<<<<<<<<<<<<<<vOLUME GET MOUNTED WITH FIX Filesystem Type Size Used Avail Use% Mounted on /dev/mapper/rhgs-root xfs 18G 3.4G 15G 20% / devtmpfs devtmpfs 910M 0 910M 0% /dev tmpfs tmpfs 920M 0 920M 0% /dev/shm tmpfs tmpfs 920M 97M 824M 11% /run tmpfs tmpfs 920M 0 920M 0% /sys/fs/cgroup /dev/vda1 xfs 497M 132M 366M 27% /boot /dev/mapper/RHS_vg4-RHS_lv4 xfs 20G 33M 20G 1% /bricks/brick3 /dev/mapper/RHS_vg2-RHS_lv2 xfs 20G 492M 20G 3% /bricks/brick1 /dev/mapper/RHS_vg3-RHS_lv3 xfs 20G 33M 20G 1% /bricks/brick2 /dev/mapper/RHS_vg1-RHS_lv1 xfs 20G 34M 20G 1% /bricks/brick0 tmpfs tmpfs 184M 0 184M 0% /run/user/0 /var/run/glusterd.socket:Dis fuse.glusterfs 20G 34M 20G 1% /mnt [root@ ~]# [root@ ~]# rpm -qa |grep gluster glusterfs-cli-3.7.5-11.el7rhgs.x86_64 python-gluster-3.7.5-6.el7rhgs.noarch nfs-ganesha-gluster-2.2.0-9.el7rhgs.x86_64 glusterfs-client-xlators-3.7.5-11.el7rhgs.x86_64 glusterfs-debuginfo-3.7.5-11.el7rhgs.x86_64 glusterfs-fuse-3.7.5-11.el7rhgs.x86_64 glusterfs-ganesha-3.7.5-11.el7rhgs.x86_64 glusterfs-libs-3.7.5-11.el7rhgs.x86_64 glusterfs-api-3.7.5-11.el7rhgs.x86_64 glusterfs-geo-replication-3.7.5-11.el7rhgs.x86_64 glusterfs-3.7.5-11.el7rhgs.x86_64 glusterfs-rdma-3.7.5-11.el7rhgs.x86_64 gluster-nagios-addons-0.2.5-1.el7rhgs.x86_64 glusterfs-server-3.7.5-11.el7rhgs.x86_64 gluster-nagios-common-0.2.3-1.el7rhgs.noarch vdsm-gluster-4.16.20-1.3.el7rhgs.noarch [root@ ~]# With above info, moving this bug to verified state.
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory, and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://rhn.redhat.com/errata/RHBA-2016-0193.html