Hello,
glusterd has option transport.socket.bind-address that enables binding
gluster to an exact IP address. This feature is necessary for HA cluster
deployment. In the initial setup everything seemed fine, but after a
little bit of testing I found several issues.
Here are the issues I found:
- NFS and selfheal daemons are started by glusterd but with volserver
hard-coded to "localhost" (xlators/mgmt/glusterd/src/glusterd-utils.c).
Since the glusterd is tied to a different address these two daemons fail
to start.
- rebalance and quota sections in glusterd also invoke glusterfs with
volserver hard-coded to "localhost"
(xlators/mgmt/glusterd/src/glusterd-quota.c and glusterd-rebalance.c)
- bind-address is not propagated to the NFS volume file or other NFS
daemons so all of them are listening on 0.0.0.0.
I provided a patch that solves these issues for version 3.4.1 using the
SRPM from here:
http://download.gluster.org/pub/gluster/glusterfs/3.4/LATEST/EPEL.repo/epel-6/SRPMS/glusterfs-3.4.1-3.el6.src.rpm
Unfortunately I didn't use trunk because I need the patched version
deployed as soon as possible. I've been running the patched version on
my test environment and it seems fine. Still I would be very grateful
if someone can check if patches are any good.
Patch can be found here:
http://kosjenka.srce.hr/~eimamagi/glusterfs-3.4.1.add.bind-address.patch
and SRPM with patch included here:
ftp://ftp.srce.hr/srce-redhat/base/el5/SRPMS/glusterfs-3.4.1-4.el5.srce.src.rpm
I hope this is something useful that can be included in future releases.
Best regards
--
Emir Imamagic
SRCE - University of Zagreb University Computing Centre, www.srce.unizg.hr
Emir.Imamagic@xxxxxxx, tel: +385 1 616 5809, fax: +385 1 616 5559