Bug 986429 - Backupvolfile server option should work internal to GlusterFS framework
Summary: Backupvolfile server option should work internal to GlusterFS framework
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: GlusterFS
Classification: Community
Component: core
Version: mainline
Hardware: x86_64
OS: Linux
medium
medium
Target Milestone: ---
Assignee: Harshavardhana
QA Contact:
URL:
Whiteboard:
: 989038 (view as bug list)
Depends On:
Blocks: 989038 glusterfs-3.5.1
TreeView+ depends on / blocked
 
Reported: 2013-07-19 19:01 UTC by Harshavardhana
Modified: 2015-03-23 01:04 UTC (History)
3 users (show)

Fixed In Version: glusterfs-3.5.1beta
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2014-06-24 11:03:03 UTC
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Embargoed:


Attachments (Terms of Use)

Description Harshavardhana 2013-07-19 19:01:49 UTC
Description of problem:
Backupvolfile server as it stands is slow and based on mount.glusterfs script. Instead in theory it should use all the available nodes in 'trusted pool' by default and should recursively attempt each before failing.

This would ensure that the clients get 'volume' configs in a consistent manner, assuming server configs are in sync always. 

Version-Release number of selected component (if applicable):
All releases

How reproducible:
Always

Actual results:
Backupvolfile only using one additional option, is prone to failures and hangs if used with mount.glusterfs

Expected results:
Backupvolfile should use all the servers in trusted pool

Additional info:

Consistency and Availability are two most important necessities of a distributed filesystem - this particular feature would enhance and augment the overall GlusterFS use case.

Comment 1 Anand Avati 2013-07-29 05:31:14 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Backupvolfile server option should not be in a mount script) posted (#2) for review on master by Harshavardhana (harsha)

Comment 2 Anand Avati 2013-07-29 05:38:34 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Backupvolfile server option should not be in a mount script) posted (#3) for review on master by Harshavardhana (harsha)

Comment 3 Anand Avati 2013-08-08 01:28:58 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Round robin DNS should not be relied upon with config service availability for clients.) posted (#4) for review on master by Harshavardhana (harsha)

Comment 4 Anand Avati 2013-08-10 01:03:59 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Round robin DNS should not be relied upon with config service availability for clients.) posted (#5) for review on master by Harshavardhana (harsha)

Comment 5 Anand Avati 2013-08-14 00:49:00 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Round robin DNS should not be relied upon with config service availability for clients.) posted (#6) for review on master by Harshavardhana (harsha)

Comment 6 Anand Avati 2013-08-24 14:49:51 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Round robin DNS should not be relied upon with config service availability for clients.) posted (#7) for review on master by Harshavardhana (harsha)

Comment 7 Anand Avati 2013-08-24 14:59:18 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Round robin DNS should not be relied upon with config service availability for clients.) posted (#8) for review on master by Harshavardhana (harsha)

Comment 8 Anand Avati 2013-09-04 19:54:49 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Round robin DNS should not be relied upon with config service availability for clients.) posted (#9) for review on master by Harshavardhana (harsha)

Comment 9 Anand Avati 2013-09-06 08:39:47 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Round robin DNS should not be relied upon with config service availability for clients.) posted (#10) for review on master by Harshavardhana (harsha)

Comment 10 Anand Avati 2013-09-06 19:01:41 UTC
REVIEW: http://review.gluster.org/5400 (glusterfsd: Round robin DNS should not be relied upon with config service availability for clients.) posted (#11) for review on master by Harshavardhana (harsha)

Comment 11 Anand Avati 2013-09-06 22:57:19 UTC
COMMIT: http://review.gluster.org/5400 committed in master by Anand Avati (avati) 
------
commit b610f1be7cd71b8f3e51c224c8b6fe0e7366c8cf
Author: Harshavardhana <harsha>
Date:   Wed Jul 24 13:16:08 2013 -0700

    glusterfsd: Round robin DNS should not be relied upon with
    config service availability for clients.
    
    Backupvolfile server as it stands is slow and prone to errors
    with mount script and its combination with RRDNS. Instead in
    theory it should use all the available nodes in 'trusted pool'
    by default (Right now we don't have a mechanism in place for
    this)
    
    Nevertheless this patch provides a scenario where a list of
    volfile-server can be provided on command as shown below
    
    -----------------------------------------------------------------
    $ glusterfs -s server1 .. -s serverN --volfile-id=<volname> \
          <mount_point>
    -----------------------------------------------------------------
                       OR
    -----------------------------------------------------------------
    $ mount -t glusterfs -obackup-volfile-servers=<server2>: \
          <server3>:...:<serverN> <server1>:/<volname> <mount_point>
    -----------------------------------------------------------------
    
    Here ':' is used as a separator for mount script parsing
    
    Now these will be remembered and recursively attempted for
    fetching vol-file until exhausted. This would ensure that the
    clients get 'volume' configs in a consistent manner avoiding the
    need to poll through RRDNS.
    
    Change-Id: If808bb8a52e6034c61574cdae3ac4e7e83513a40
    BUG: 986429
    Signed-off-by: Harshavardhana <harsha>
    Reviewed-on: http://review.gluster.org/5400
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Anand Avati <avati>

Comment 12 Anand Avati 2014-03-22 10:13:36 UTC
REVIEW: http://review.gluster.org/7317 (gfapi: glfs_set_volfile_server() now takes multiple hostnames) posted (#1) for review on master by Harshavardhana (harsha)

Comment 13 Anand Avati 2014-03-25 00:59:47 UTC
REVIEW: http://review.gluster.org/7317 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#2) for review on master by Harshavardhana (harsha)

Comment 14 Anand Avati 2014-03-25 03:37:14 UTC
REVIEW: http://review.gluster.org/7317 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#3) for review on master by Harshavardhana (harsha)

Comment 15 Anand Avati 2014-03-25 22:05:09 UTC
REVIEW: http://review.gluster.org/7317 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#4) for review on master by Harshavardhana (harsha)

Comment 16 Anand Avati 2014-03-26 01:31:57 UTC
REVIEW: http://review.gluster.org/7317 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#5) for review on master by Harshavardhana (harsha)

Comment 17 Anand Avati 2014-03-27 15:19:09 UTC
REVIEW: http://review.gluster.org/7317 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#6) for review on master by Harshavardhana (harsha)

Comment 18 Anand Avati 2014-04-01 22:06:56 UTC
COMMIT: http://review.gluster.org/7317 committed in master by Anand Avati (avati) 
------
commit 0c1d78f5c52c69268ec3a1d8d5fcb1a1bf15f243
Author: Harshavardhana <harsha>
Date:   Sat Mar 22 01:33:06 2014 -0700

    gfapi: glfs_set_volfile_server() now entertains multiple calls
    
    Previous API:
    
    glfs_set_volfile_server (..., const char *host, ...) - single call
    
    New API's:
    
    glfs_set_volfile_server (..., const char *host1, ...)
    glfs_set_volfile_server (..., const char *host2, ...)
    
    Multiple calls to this function with different volfile servers,
    port or transport-type would create a list of volfile servers
    which would be polled during `volfile_fetch_attempts()`
    
    glfs_unset_volfile_server (..., const char *host, ...) to remove
    a server from the list (this is provided for future usage)
    
    Change-Id: I313efbd3efbd0214e2a71465f33195788df406cc
    BUG: 986429
    Signed-off-by: Harshavardhana <harsha>
    Reviewed-on: http://review.gluster.org/7317
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Niels de Vos <ndevos>
    Reviewed-by: Anand Avati <avati>

Comment 19 Anand Avati 2014-04-02 20:45:42 UTC
REVIEW: http://review.gluster.org/7384 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#1) for review on release-3.5 by Harshavardhana (harsha)

Comment 20 Anand Avati 2014-04-03 05:04:54 UTC
REVIEW: http://review.gluster.org/7384 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#2) for review on release-3.5 by Harshavardhana (harsha)

Comment 21 Anand Avati 2014-04-28 07:45:33 UTC
REVIEW: http://review.gluster.org/7384 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#3) for review on release-3.5 by Harshavardhana (harsha)

Comment 22 Anand Avati 2014-04-30 05:45:00 UTC
REVIEW: http://review.gluster.org/7384 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#4) for review on release-3.5 by Harshavardhana (harsha)

Comment 23 Anand Avati 2014-05-06 00:53:13 UTC
REVIEW: http://review.gluster.org/7384 (gfapi: glfs_set_volfile_server() now entertains multiple calls) posted (#5) for review on release-3.5 by Harshavardhana (harsha)

Comment 24 Anand Avati 2014-05-10 02:06:49 UTC
COMMIT: http://review.gluster.org/7384 committed in release-3.5 by Niels de Vos (ndevos) 
------
commit ba328340e878c3156418bb3443c35a7db02a0f4b
Author: Harshavardhana <harsha>
Date:   Wed Apr 2 13:43:36 2014 -0700

    gfapi: glfs_set_volfile_server() now entertains multiple calls
    
    Backport from - http://review.gluster.org/7317
    
    Previous API:
    
    glfs_set_volfile_server (..., const char *host, ...) - single call
    
    New API's:
    
    glfs_set_volfile_server (..., const char *host1, ...)
    glfs_set_volfile_server (..., const char *host2, ...)
    
    Multiple calls to this function with different volfile servers,
    port or transport-type would create a list of volfile servers
    which would be polled during `volfile_fetch_attempts()`
    
    glfs_unset_volfile_server (..., const char *host, ...) to remove
    a server from the list (this is provided for future usage)
    
    >> Change-Id: I313efbd3efbd0214e2a71465f33195788df406cc
    >> BUG: 986429
    >> Signed-off-by: Harshavardhana <harsha>
    >> Reviewed-on: http://review.gluster.org/7317
    >> Tested-by: Gluster Build System <jenkins.com>
    >> Reviewed-by: Niels de Vos <ndevos>
    >> Reviewed-by: Anand Avati <avati>
    
    Change-Id: If0020f6b8775bdbe987563247c83d59a2d3744ad
    BUG: 986429
    Signed-off-by: Harshavardhana <harsha>
    Reviewed-on: http://review.gluster.org/7384
    Tested-by: Gluster Build System <jenkins.com>
    Reviewed-by: Niels de Vos <ndevos>

Comment 25 Niels de Vos 2014-05-25 09:06:54 UTC
The first (and last?) Beta for GlusterFS 3.5.1 has been released [1]. Please verify if the release solves this bug report for you. In case the glusterfs-3.5.1beta release does not have a resolution for this issue, leave a comment in this bug and move the status to ASSIGNED. If this release fixes the problem for you, leave a note and change the status to VERIFIED.

Packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update (possibly an "updates-testing" repository) infrastructure for your distribution.

[1] http://supercolony.gluster.org/pipermail/gluster-users/2014-May/040377.html
[2] http://supercolony.gluster.org/pipermail/gluster-users/

Comment 26 Niels de Vos 2014-06-06 07:09:23 UTC
*** Bug 989038 has been marked as a duplicate of this bug. ***

Comment 27 Niels de Vos 2014-06-24 11:03:03 UTC
This bug is getting closed because a release has been made available that should address the reported issue. In case the problem is still not fixed with glusterfs-3.5.1, please reopen this bug report.

glusterfs-3.5.1 has been announced on the Gluster Users mailinglist [1], packages for several distributions should become available in the near future. Keep an eye on the Gluster Users mailinglist [2] and the update infrastructure for your distribution.

[1] http://supercolony.gluster.org/pipermail/gluster-users/2014-June/040723.html
[2] http://thread.gmane.org/gmane.comp.file-systems.gluster.user


Note You need to log in before you can comment on or make changes to this bug.