From 6b6ee3bce4b2fcb2cbfd06ab0a199d7aac4b7cec Mon Sep 17 00:00:00 2001 From: Niels de Vos Date: Tue, 21 Oct 2014 09:38:09 +0200 Subject: glusterd: make bricks respect 'transport.socket.bind-address' When GlusterD starts the brick processes, these will listen on all interfaces. When the 'transport.socket.bind-address' option is set in glusterd.vol, the brick processes should only listen on the specified hostname or IP-address. Cherry picked from commit 430b874c4f1a171c106a9e1e6507e14e79805a1d: > Change-Id: I8e7d1f294904081137c23f3446261329d0d13bba > BUG: 1149863 > Signed-off-by: Niels de Vos > Reviewed-on: http://review.gluster.org/8910 > Tested-by: Gluster Build System > Reviewed-by: Krishnan Parthasarathi > Tested-by: Krishnan Parthasarathi Change-Id: I8e7d1f294904081137c23f3446261329d0d13bba BUG: 1149857 Signed-off-by: Niels de Vos Reviewed-on: http://review.gluster.org/8953 Tested-by: Gluster Build System --- xlators/mgmt/glusterd/src/glusterd-utils.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/xlators/mgmt/glusterd/src/glusterd-utils.c b/xlators/mgmt/glusterd/src/glusterd-utils.c index fdf4a1c993d..0aa8e5db0e8 100644 --- a/xlators/mgmt/glusterd/src/glusterd-utils.c +++ b/xlators/mgmt/glusterd/src/glusterd-utils.c @@ -1348,6 +1348,7 @@ glusterd_volume_start_glusterfs (glusterd_volinfo_t *volinfo, char logfile[PATH_MAX] = {0,}; int port = 0; int rdma_port = 0; + char *bind_address = NULL; char socketpath[PATH_MAX] = {0}; char glusterd_uuid[1024] = {0,}; char valgrind_logfile[PATH_MAX] = {0}; @@ -1444,6 +1445,13 @@ glusterd_volume_start_glusterfs (glusterd_volinfo_t *volinfo, runner_argprintf (&runner, "%s-server.listen-port=%d", volinfo->volname, port); + if (dict_get_str (this->options, "transport.socket.bind-address", + &bind_address) == 0) { + runner_add_arg (&runner, "--xlator-option"); + runner_argprintf (&runner, "transport.socket.bind-address=%s", + bind_address); + } + if (volinfo->memory_accounting) runner_add_arg (&runner, "--mem-accounting"); -- cgit