[Bugs] [Bug 1217381] New: [RFE] Rebalance Performance Improvements

bugzilla at redhat.com bugzilla at redhat.com
Thu Apr 30 09:20:25 UTC 2015


https://bugzilla.redhat.com/show_bug.cgi?id=1217381

            Bug ID: 1217381
           Summary: [RFE] Rebalance Performance Improvements
           Product: GlusterFS
           Version: 3.7.0
         Component: distribute
          Keywords: FutureFeature, Tracking, Triaged
          Assignee: bugs at gluster.org
          Reporter: spalai at redhat.com
                CC: bugs at gluster.org, gluster-bugs at redhat.com,
                    nbalacha at redhat.com, nsathyan at redhat.com
        Depends On: 1171954
            Blocks: 1175214



+++ This bug was initially created as a clone of Bug #1171954 +++

Description of problem:

DHT Rebalance performance improvements

This bug is an umbrella bug for the DHT rebalance performance improvements in
3.7

--- Additional comment from Nagaprasad Sathyanarayana on 2015-04-13 14:32:21
MVT ---

http://review.gluster.org/9657

--- Additional comment from Anand Avati on 2015-04-23 17:40:12 MVT ---

REVIEW: http://review.gluster.org/9657 (rebalance: Introducing local crawl and
parallel migration) posted (#18) for review on master by Susant Palai
(spalai at redhat.com)

--- Additional comment from Anand Avati on 2015-04-28 00:24:07 MVT ---

REVIEW: http://review.gluster.org/9657 (rebalance: Introducing local crawl and
parallel migration) posted (#19) for review on master by Shyamsundar
Ranganathan (srangana at redhat.com)

--- Additional comment from Anand Avati on 2015-04-29 02:13:29 MVT ---

REVIEW: http://review.gluster.org/9657 (rebalance: Introducing local crawl and
parallel migration) posted (#20) for review on master by Susant Palai
(spalai at redhat.com)

--- Additional comment from Anand Avati on 2015-04-29 18:48:03 MVT ---

COMMIT: http://review.gluster.org/9657 committed in master by Shyamsundar
Ranganathan (srangana at redhat.com) 
------
commit b3a966c241b5d5b8117f06a4c744c18b6a59bb18
Author: Susant Palai <spalai at redhat.com>
Date:   Sun Apr 12 15:55:02 2015 +0530

    rebalance: Introducing local crawl and parallel migration

    The current patch address two part of the design proposed.
    1. Rebalance multiple files in parallel
    2. Crawl only bricks that belong to the current node

    Brief design explanation for the above two points.

    1. Rebalance multiple files in parallel:
       -------------------------------------
    The existing rebalance engine is single threaded. Hence, introduced
    multiple threads which will be running parallel to the crawler. The
    current rebalance migration is converted to a "Producer-Consumer"
    frame work.

    Where Producer is : Crawler
          Consumer is : Migrating Threads

    Crawler: Crawler is the main thread. The job of the crawler is now
    limited to fix-layout of each directory and add the files which are
    eligible for the migration to a global queue in a round robin manner
    so that we will use all the disk resources efficiently. Hence, the
    crawler will not be "blocked" by migration process.

    Producer: Producer will monitor the global queue. If any file is
    added to this queue, it will dqueue that entry and migrate the file.
    Currently 20 migration threads are spawned at the beginning of the
    rebalance process. Hence, multiple file migration happens in parallel.

    2. Crawl only bricks that belong to the current node:
       --------------------------------------------------
    As rebalance process is spawned per node, it migrates only the files
    that belongs to it's own node for the sake of load balancing. But it
    also reads entries from the whole cluster, which is not necessary as
    readdir hits other nodes.

    New Design:
            As part of the new design the rebalancer decides the subvols
    that are local to the rebalancer node by checking the node-uuid of
    root directory prior to the crawler starts. Hence, readdir won't hit
    the whole cluster  as it has already the context of local subvols and
    also node-uuid request for each file can be avoided. This makes the
    rebalance process "more scalable".

    Change-Id: I73ed6ff807adea15086eabbb8d9883e88571ebc1
    BUG: 1171954
    Signed-off-by: Susant Palai <spalai at redhat.com>
    Reviewed-on: http://review.gluster.org/9657
    Tested-by: Gluster Build System <jenkins at build.gluster.com>
    Reviewed-by: N Balachandran <nbalacha at redhat.com>
    Reviewed-by: Shyamsundar Ranganathan <srangana at redhat.com>


Referenced Bugs:

https://bugzilla.redhat.com/show_bug.cgi?id=1171954
[Bug 1171954] [RFE] Rebalance Performance Improvements
https://bugzilla.redhat.com/show_bug.cgi?id=1175214
[Bug 1175214] [RFE] Rebalance Performance Improvements
-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.


More information about the Bugs mailing list